Вызов finish() не завершает действие
Я хочу закончить свою деятельность, когда она приостанавливается по определенным причинам. До недавнего времени мой код работал отлично, но недавно finish() метод почему-то перестал выполнять свою работу. Кроме того, когда finish() вызывается метод, я получаю следующее LogCatсообщение:
12-31 18:01:23.445: W/ActivityManager(481): Duplicate finish request for ActivityRecord{42465370 u11 "myapplicationpackage"}
может кто-нибудь помочь мне с этим?
OnPause() метод
@Override
protected void onPause() {
super.onPause();
finish();
}
2 ответов
вы можете проверить, если ваша деятельность уже заканчивая вызовом if (isFinishing()){}, а вызов finish только если это не так. кроме того, вы, возможно, захотите, чтобы указать android:noHistory="true" о вашей деятельности в файле манифеста, который фактически завершит вашу деятельность, как только пользователь перейдет от него.
у вас, скорее всего, есть дубликаты выполняемой операции. Я предлагаю сделать все действия под одним родителем и использовать
finishall()