Probleme mit Location Updates

  • Hallo,
    ich habe da ein merkwürdiges Problem mit dem FusedLocationProvider, welches ich mir nicht erklären kann.


    Ich starte in meiner Main Activity einen Service im Vordergrund durch einen Button-Klick mit:


    Code
    startLocationService ();



    Die Methode gehört zu einer Klasse "myLocationService" und sieht im Wesentlichen so aus:

    Das funktioniert auch so, die Methode locationCallback wird jetzt alle 5 Sekunden aufgerufen und ich bekomme die aktuelle Position..


    Jetzt habe ich die locationCallback-Methode erweitert.
    Im Prinzip möchte ich ein Ereignis auslösen, wenn ich Zuhause ankomme.


    Da es keinen Sinn macht, die aktuelle Position alle 5 Sekunden abzufragen, wenn ich noch sehr weit entfernt bin,
    wollte ich die Häufigkeit der Location Updates an die Restentfernung von Zuhause anpassen.


    Ich errechne bei jedem Aufruf der Callback die verbleibende Distanz zu einem festen Ziel (Zuhause) und versuche jetzt in der CallBack-Methode die Update Zeit zu verändern:




    Das Ergebnis sieht so aus:
    Die Location Updates kommen jetzt sehr schnell ( schneller als jede Sekunde)
    Hat jemand eine Idee, was da falsch sein könnte?


    Ich habe mal testweise beim Starten der Updates mit 5 Sekunden und beim Ändern auf 10 Minuten die Anzahl der Updates auf 1 gesetzt.



    Code
    locationRequest.setInterval        ( 10*60*1000 );
            locationRequest.setFastestInterval ( 10*60*1000 );
            locationRequest.setPriority        ( PRIORITY_HIGH_ACCURACY );
    
    
            locationRequest.setNumUpdates      ( 1 );

    Jetzt kommt nur noch das erste Update nach 5 Sekunden.


    Wenn ich da die Update Zeit auf 10 Minuten setze, kommen gar keine Updates mehr.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!