#android #activity
Я поместила вызов метода System.exit(0) в onBackPressed: @Override public void onBackPressed() { super.onBackPressed(); System.exit(0); } и после нажатия на клавишу BACK (из первого активити), судя по логам, вызываются следующие методы обратного вызова: onCreate onStart onResume onBackPressed После этого я запускаю приложение снова (неважно как - вызовом из списка запущенных приложением, или тапом по иконке приложения на домашнем экране), и вижу, что следующим вызывается метод OnCreate, минуя методы onStop и onDestroy. Каким образом завершается активность без вызова методов onStop и onDestroy? Убивается процесс, в котором запущено приложение?
Ответы
Ответ 1
Вызов System.exit(0) перезапускает приложение, выкидывая последнюю activity. Например, если из ActivityA открыта ActivityB, в которой делается вызов System.exit(0), то приложение будет убито и сразу же перезапущено с ActivityA. Источник: Difference between finish() and System.exit(0)
Комментариев нет:
Отправить комментарий