2016-11-09 4 views
0

У меня проблема с обновлениями моего менеджера местоположений. Каждый раз, когда я прекращаю действие или когда я покидаю весь менеджер местоположений приложения, он продолжает обновлять местоположение.Обновление менеджера местоположений после удаления обновлений

Я хотел приложения, чтобы постоянно обновлять местоположение, когда дисплей выключен, поэтому я использовал

@Override 
protected void onPause() { 
    super.onPause(); 
    if (this.isFinishing()) { 
     locationManager.removeUpdates(this); 
     } 
} 

Я поставил locationManager.removeUpdates(this); даже в onBackPressed() методах зародыша после выхода активности, нажав назад или выход из приложения на менеджер запрашивает обновления.

ответ

0

Refer Understanding of isFinishing()
Когда пользователь переключается на другое приложение, ваше приложение не обязательно убивается ОС, пока не потребуется освободить ресурсы. Следовательно, isFinishing() может вызывать true, когда вызывается onPause().
Позже, когда ОС действительно убивает ваше приложение, onPause() не вызывается, поскольку приложение уже находится в фоновом режиме.
Используйте вызов onStop().

+0

К сожалению, это не сработало. Как-то, когда я нажимаю кнопку «Назад», чтобы вернуться к основной деятельности, менеджер местоположений продолжает обновлять местоположение (значок местоположения мигает в панели уведомлений) Я попытался установить везде locationManager.removeUpdates (это); но он просто не останавливает обновление моего местоположения. – Lowrider