App Hält Pinging GPS
-
28-09-2019 - |
Frage
Ich habe eine mapView
Aktivität, die eine LocationListener
für einen neuen Standort alle zwei Sekunden zu überprüfen registriert hat. Wenn ich die Zurück-Taste drücken weiter die GPS auf dem Hauptbildschirm der App zurück zu gehen alle zwei Sekunden für einen Standort zu überprüfen. Hat der Hörer nicht gestoppt werden, wenn der Activity
aufhört? Wenn nicht, wie kann ich damit umgehen? Im Moment habe ich nicht außer Kraft gesetzt onStop()
.
private final LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
updateWithNewLocation(location);
}
public void onProviderDisabled(String provider) {
//TODO do something to handle when the provider is disabled
}
public void onProviderEnabled(String provider) { }
public void onStatusChanged(String provider, int status, Bundle extras) { }
};
Lösung
Sie müssen die onPause
Methode Ihrer Activity
außer Kraft zu setzen, weil das sicher ist, aufgerufen werden.
Im onPause
Methode sollten Sie die LocationListener
deregistrieren.
Sie tun dies durch
locationManager.removeUpdates(yourListener);
Wenn Sie ein mapView
haben ich hatte manchmal Probleme mit dem locationOverlay
einen Listener registriert und mit dem GPS zu halten, auch wenn die mapview im Hintergrund waren.