Pregunta

¿Cómo me doy de baja un LocationListener a partir de recibir actualizaciones de la LocationManager?

Aquí es cómo me lo crea

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);

Después de haber salido de la opinión de que la creó el LocationListener todavía estoy recibiendo mensajes de registro en la ventana LogCat.

Yo entiendo que esto se debe a que estoy dejando huérfano al oyente, pero no puedo ver ningún método destroy en el LocationListener ni puedo ver cualquier método de "extracción oyente" estilo sobre el objeto LocationManager.

¿Fue útil?

Solución

removeUpdates en LocationManager, pasando su oyente ubicación.

Otros consejos

mLocationManager.removeUpdates(mListener);

removeUpdates debe ayudar.

mLocationManager.removeUpdates(mListener)
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top