android.app. Подкласс приложения, onTerminate не вызывается - PullRequest
12 голосов
/ 20 марта 2010

Из документации на android.app.Application:

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

Я использую свой собственный подкласс для поддержки объекта, который я использую для запроса к серверу. Также из документации:

onTerminate() Вызывается при остановке приложения.

Однако, onTerminate() в моем классе никогда не называют. Я нажимаю кнопку «Назад» во время просмотра моей основной деятельности, и все кажется выключенным. Метод onDestroy() моей основной деятельности вызывается и isFinishing() возвращает true, но метод onTerminate() android.app.Application моего метода никогда не вызывается.

Почему это? Что мне не хватает? Есть ли что-то, что держит его открытым?

Ответы [ 2 ]

17 голосов
/ 20 марта 2010

Это может быть связано с тем, что, хотя вы и выходите из приложения, процесс для него все еще выполняется в фоновом режиме, поэтому при перезапуске приложения будет использоваться тот же процесс.

Также javadocs заявляет, что не полагается на вызываемый код onTerminate.

Примечание: никогда не зависит от этот метод вызывается; во многих случаях ненужный процесс подачи заявления будет просто убит ядром без выполнения какого-либо приложения Код.

5 голосов
/ 12 июля 2011
void onTerminate()

Этот метод предназначен для использования в эмулируемых средах процесса.

http://developer.android.com/reference/android/app/Application.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...