Android.app.Application подкласс, onTerminate не вызывается
Из документации для android.app.Application
:
Базовый класс для тех, кто должен поддерживать глобальное состояние приложения.
Я использую свой собственный подкласс для поддержки объекта, который я использую для запроса сервера. Также из документации:
onTerminate()
Вызывается, когда приложение останавливается.
Однако onTerminate()
в моем классе никогда не вызывается. Я нажимаю кнопку "Назад" во время просмотра моего основного действия, и все кажется закрытым. Вызывается мой основной метод onDestroy()
и isFinishing()
возвращает true, но мой метод android.app.Application
onTerminate()
никогда не вызывается.
Почему это? Что мне не хватает? Есть ли что-то, что держит его открытым?
Ответы
Ответ 1
Это может быть связано с тем, что, хотя вы выходите из приложения, процесс для него все еще работает в фоновом режиме, поэтому перезапуск приложения будет использовать тот же процесс.
Также javadocs заявляет, что не полагается на вызываемый код onTerminate.
Примечание: никогда не зависеть от этот метод называется; во многих случаях ненужный процесс подачи заявки будет просто убит ядром без каких-либо приложений код.
Ответ 2
void onTerminate()
Этот метод предназначен для использования в эмулируемых средах процесса.
http://developer.android.com/reference/android/app/Application.html