GPS-Listener etwas batterie-schonender

  • 5 Antworten
  • Letztes Antwortdatum
ui_3k1

ui_3k1

Gesperrt
197
Hello :)
die Überschrift verrät es ja schon... Ich wollte mich mal erkundigen, wie man es hinbekommt, dass der GPS Listener etwas weniger Akku-Draining hervorruft.

Grundsätzlich fallen mir zwei Möglichkeiten ein:
1. direkt den Aufruf des Listeners verändern, in den Paramtern kann an ja einstellen, wann ein Refresh erfolgen soll. Einmal zeitlich in Millisekunden und ein weiterer Parameter sagt nach welcher Entfernung. Ich habe schon ein paar Wertpaare getestet, aber eine wirklich Verbesserung habe ich nicht bemerkt (wahrscheinlich wird die ganze Zeit geupdatet, aber die Aktualisierung wird vom System erst nach "korrekten" Parametern ans System weitergegeben - wie soll sonst das Gerät wissen, dass es 500Meter von der letzten Position entfernt ist - die Messung muss dafür logischerweise bereits erfolgt sein. Hmm so ganz so schlau werde ich aus den Paramtern nicht)
2. einen "Über-Service" (wird das dann über einen Alarm-Manager gemacht?), der das System bspw. alle 5 Minuten in die Update-Routine des GPS-Listeners schickt.

Was ist davon jetzt die bessere Wahl?

Danke vorab! :smile:
 
Danke für den Hinweis, hatte ich schon überflogen, aber nicht genau durchgearbeitet. Das "Problem" bei meiner Anwendung ist, dass ich ausschließlich auf GPS-Daten aus dem GPS-Empfänger zugreifen kann, also scheiden die Cell-Infos bzw. Netzwerkinfos aus.
Hab gerade nochmal an den Werten was verändert.

Code:
locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 300000, 0, locListener);
die 300.000 (ms) entsprechen 5 mins. und die 0 für die min-Distance... mit diesen Einstellungen wird meine App schon mal unter den GPS-Einstellungen unter "geringer Akkuverbrauch" geführt. Davor war es immer "hoher Akkuverbrauch".

Ich denke ich werde die App mal über Nacht laufen lassen und das Ergebnis abwarten - wobei ich mir recht sicher bin, dass ich dieses Wertepaar bereits ausprobiert hatte.. Hmm, hab aber auch ne neue ROM auf dem Handy, die alte war extrem instabil. Aber eigentlich sollte ein ROM-Wechsel nicht der Auslöser für den veränderten "Status" sein, oder?
Strange... Morgen wissen wir mehr :)
 
Hallo,
mein Verbrauch liegt bei ca. 20% in 3 Stunden.
Als Einstellung habe ich gewählt:
locationManager.requestLocationUpdates(provider, 2000, 10, locListener);
wahlweise
locationManager.requestLocationUpdates(provider, 2000, 5, locListener);
Einen kleineren Wert als 5 halte ich nicht für sinnvoll,
weil der Genauigkeitsradius bei mir im Mittel zwischen 3 und 10 liegt.

Deine Einstellung ...300000, 0, .... verblüfft mich deshalb.

Kennst Du die Unterschiede zwischen
import android.location.LocationListener;
import com.google.android.gms.location.LocationListener;

Im Internet wurde der zweite Listener empfohlen.

E.S.
 
Zuletzt bearbeitet:
Hmm, vermutlich hast du auch ein note3, wenn ich deinen nick richtig deute. Dann wären die von dir genannten 20% mit meinen Werten vergleichbar (hab auch den "big guy") :-D ...
Die Genauigkeit habe ich mir noch nicht ausgeben lassen. Ich nutze den listener für eine Geschwindigkeitsmessung. Aber die funktionierte bei ersten Tests tadellos.
Gms bezieht sich meines Wissens auf die Mobilfunkzellen. GPS ist genauer ("fine location"). Vielleicht kommen da die Unterschiede in der Genauigkeit her...

Der ursprüngliche Beitrag von 18:50 Uhr wurde um 18:53 Uhr ergänzt:

http://de.wikipedia.org/wiki/GSM-Ortung
 
Zurück
Oben Unten