理由はわかりませんが、アプリケーションを閉じた後も LocationManager が動作していることがあります。
1 つのアクティビティで onCreate-Methode の startGPS() を呼び出します (1 つだけ、StartActivity と呼びましょう)。
protected void startGPS(){
try {
lmanager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
lmanager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, this);
lmanager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
} catch(Exception e) {
e.printStackTrace();
}
}
このアクティビティが破棄される場合 (つまり、アプリケーションが閉じられるとき)、endGPS() を呼び出します。
public void endGPS(){
try {
lmanager.removeUpdates(this);
lmanager=null;
} catch(Exception e) {
e.printStackTrace();
}
}
いくつかのアイデア、いくつかの提案、私は何を間違えましたか?!