Android location-update jede minute

Ich bin derzeit am schreiben einer Anwendung, erhält die Positionsdaten jede minute (oder andere angegebene Zeit) und thes senden Sie es an server.

Das problem, dass ich bemerkt habe, ist:
Wenn ich mit meinem Antrag zur Stromquelle verbunden, es funktioniert perfekt - sendet Aktualisierungen mit definierten Zeitintervall.
Wenn ich es auf die Batterie es sendet updates nach dem Zufallsprinzip.

Für meine Anwendung verwende ich timer festlegen Intervall des Updates. Dieser timer läuft im Hintergrund. Ich bitte Aktualisierungen im timer und updates entfernen, wenn ich Position.
Fragment von meinem code:

    private class mainTask extends TimerTask
    { 
        public void run() 
        {
            toastHandler.sendEmptyMessage(0); 
        }
    } 

    private final Handler toastHandler = new Handler()
    {
        @Override
        public void handleMessage(Message msg)
        {
            date = date.getInstance(); //used to set time of update.

            if(!GPSupdating)
            {
                locationManager.requestLocationUpdates("gps", 0, 0, locationListenerGPS);
                GPSupdating = true;
            }
        }
    };

Mein Standort-listener:

    LocationListener locationListenerGPS = new LocationListener() 
    {

        public void onLocationChanged(Location updatedLocation) 
        {
            myGPSLocation = updatedLocation;
            haveLocationGPS = true;
            locationManager.removeUpdates(locationListenerGPS);
            GPSupdating = false;
        }

        public void onStatusChanged(String provider, int status, Bundle extras) {}

        public void onProviderEnabled(String provider) {}

        public void onProviderDisabled(String provider) {}
    };  

Haben Sie eine Idee, warum das nicht richtig funktioniert?

  • Ich hatte die gleichen Probleme mit "TIMER" im hintergrund läuft "service" bis heute habe ich nicht geschafft, irgendeine Argumentation dahinter... SO habe ich Alram Manager im Ort Timer und dass workd perfekt
  • Danke für deine Antwort. Könnten Sie bitte senden Sie mir einige Beispiel-code, in dem Sie Alarm-Manager statt der Timer? Es wäre auch sehr hilfreich.
Schreibe einen Kommentar