Как узнать, активировал ли пользователь onDestroy в Activity, а не в системе?

Я пишу сервис, который остается открытым в фоновом режиме и записывает действия пользователя.

Теперь, если пользователь завершает действие приложения, нажав клавишу "Назад" или проведя пальцем по приложению на экране недавних приложений, я хочу завершить и фоновую службу, но если Android вызывает onDestroy, из-за изменения ориентации или по другой причине служба все еще должна работать в фоновом режиме.

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

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

1 ответ

Решение

Вы можете проверить this.isFinishing() для своей активности, когда вызывается onDestroy.

Подробнее здесь Acrivity.onDestroy

Другие вопросы по тегам