ProximityAlert Problem

  • 7 Antworten
  • Letztes Antwortdatum
S

schnti

Neues Mitglied
0
Hallo zusammen, ich habe probleme mit meinem ProximityAlerts.

Und zwar funktionieren diese ohne Problem, wenn ich über den Emulator mittels Emulator Control GPS Koordinaten eingebe (ich nutze hier meistens der Faulheit wegen einstellige Werte z.B. Long = 1, Lat = 2) jedoch nicht, wenn ich die App auf meinem Sony Ericsson XPERIA hab und dann exacte Werte habe.

Nach dieser Feststellung habe ich nun auch mal im Emulator mit exacten Werten gearbeitet und siehe da es funktioniert auch nicht... :-(

Folgende Programmzeilen habe ich verwendet:

Code:
public static final String ALERT_RADIUS = "50";

private int alertRadius = Integer.parseInt(prefs.getString("alertRadius", Properties.ALERT_RADIUS));

locationManager.addProximityAlert(place.getLongitude(), place.getLatitude(), alertRadius, -1, proximityIntent);

Das ganze ist eine App, die automatisch das Gerät auf Stumm schalten soll, wenn man sich in einem bestimmten Bereich befindet.

Reichen euch diese Informationen für eine Fehlerdiagnose aus, oder soll ich noch mehr Code posten?

Vielen Dank für jegliche Hilfe.
 
wäre halt mal gut zu wissen was im LogCat steht
 
das Porblem ist, es gibt keinen Eintrag im LogCat. Der "ProximityIntentReceiver extends BroadcastReceiver" wird gar nicht erst ausgeführt / aufgerufen.

Nochmal eine kleine Veranschaulichung:
Ich sende folgende Koordinaten: (-122,084095/37,42200552)
Speichere den aktuellen Ort und lege den Alert an.

Sende dann folgende Koordinaten (1 / 1) -> verlasse vorherigen Ort.

Sende dann wieder vorherige Koordinaten: (-122,084095/37,42200552)
-> es passiert überhaupt nichts

Spiele ich das ganze folgendermaßen durch....
Ich sende folgende Koordinaten: (22/22)
Speichere den aktuellen Ort und lege den Alert an.

Sende dann folgende Koordinaten (1 / 1) -> verlasse vorherigen Ort.
Sende dann wieder vorherige Koordinaten: (22/22)
--> Ich bekomme die Meldung, dass ich den Ort betreten habe.
--> alles tut
 
bist du dir sicher das du mit negativ werten umgehen kannst? Vielleicht kann er diese nicht interprtieren, was für initalisierungen nutzt du, int, long???
 
Ich benutze den Datentyp double dieser wird auch vom Android Location Object verwendet.

Ich habe auch nur positive Werte getestet, diese funktionieren auch nicht.

Ich habe auch schon "richtige" Koordinaten verwendet, einfach welche bei Google gesucht, tut auch nicht. :-(
 
fehlt vielleicht <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> in der Manifest?
 
Nee die Berechtigungen stimmen. Sonst würde ich ja gar keine GPS Daten erhalten.
 
So, habe das Problem endlich gefunden....

Habe beim Anlegen der Alerts Lat und Long verwechselt...

so ist es richtig:
Code:
locationManager.addProximityAlert(place.getLatitude(), place.getLongitude(), alertRadius, -1, proximityIntent);

Somit hat es bei meinen testwerten, bei welchen ich meistens Lat und Long gleich gewählt habe funktioniert und bei den richtigen natürlich nicht...

doofer Fehler^^
 
Zurück
Oben Unten