Как узнать, что деятельность завершена? - PullRequest
10 голосов
/ 06 января 2012

Я хочу проверить, запущено или завершено действие. Есть ли способ, с помощью которого я могу проверить статус активности?

Я нашел activity.isFinishing(), но я не уверен в этом.

Ответы [ 2 ]

15 голосов
/ 06 января 2012

Если вы хотите выполнить какой-либо шаг до того, как Activity станет невидимым.

Здесь есть несколько вариантов.

onDestroy () - для окончательной очистки.

isFinishing () - сразу после вызова act.finish() он вернет true.

onStop () - когда Activity уничтожен процессом фреймворка. (не уничтожено)

onPause () - когда Activity покрыт любым другим Activity

onBackPressed () - захват события аппаратной клавиши Back, запускаемой пользователем.

1 голос
/ 13 октября 2018

Вызов isFinishing в методе onPause до уничтожения действия:

@Override
protected void onPause() {
    super.onPause();
    if (isFinishing()) {
        // Here  you can be sure the Activity will be destroyed eventually
    }
}
...