Как отследить закрытие пользователем приложения?

В моем приложении пользователь запускает таймер. Если этот таймер заканчивается, что-то должно произойти. Но есть такой вариант, что пользователь отключает приложение. Можно ли как-то отследить это и записать в базу данных, что он не дождалась окончания таймера?


Ответы (2 шт):

Автор решения: Виталий Перятин

Чтобы отследить закрытие приложения можно использовать подход SingleActivity. Тогда у Вас будет одна единственная Activity, которая будет жить на протяжении всего приложения. Сворачивание Activity будет эквивалентно сворачиванию приложения и Вы сможете отследить его в методе onDestroy(). Подробнее о подходе SingleActivity можно почитать здесь.

→ Ссылка
Автор решения: Circassian

Имплементируйте в ваш класс Application интерфейс Application.ActivityLifecycleCallbacks и вы сможете контролировать жизненные циклы всех ваших Activity

→ Ссылка