Destata a inscrição de um LocationListener do LocationManager
-
21-09-2019 - |
Pergunta
Como faço para cancelar a inscrição LocationListener
De atualizações de recebimento do LocationManager
?
Aqui está como estou configurando
mLocationManager = (LocationManager)this.getSystemService(LOCATION_SERVICE);
mListener = new LocationListener() {
public void onLocationChanged(Location location) {
Log.i("LocationListener", "Logging Change");
}
}
mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
5000, 1, mListener);
Depois de sair da visão que criou o LocationListener
Ainda estou recebendo mensagens de log na janela Logcat.
Entendo que isso é porque estou órfão do ouvinte, mas não consigo ver nenhum método de destruição no LocationListener
nem posso ver nenhum método de estilo "remover ouvinte" no LocationManager
objeto.
Solução
Ligar RemovapUdates no local de localização, passando pelo ouvinte da sua localização.
Outras dicas
mLocationManager.removeUpdates(mListener);
Eu penso RemovapUdates deve ajudar.
mLocationManager.removeUpdates(mListener)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow