2016-03-03 6 views
2

Я не уверен, почему это происходит, но когда я использую студию Android и щелкаю красным цветом x, чтобы завершить свое приложение, он перезапустит мое приложение для основного действия. Я заметил, что это происходит только тогда, когда я перешел к другой деятельности из основного вида деятельности.Android Studio - приложение для восстановления Kill Process?

Например, если я пытаюсь убить процесс, когда я смотрю экран Activity A, процесс будет прекращен без перезагрузки, но если я убью процесс, когда я посмотрю на операцию B, нажатую с помощью кнопки on Действие A перезапустит процесс.

По какой причине это происходит?

ответ

2

Я обнаружил, что «Завершить приложение» реализовано как System.exit(1).

Похоже, что функция андроидов exit(int) реализована мягко, чтобы сохранить стек активности.

По моему мнению, это связано с тем, что для завершения отладки приложений, когда память устройства низкая, требуется «Завершить приложение». Таким образом, это очень полезно в такой последовательности:

  • запуска приложения откройте некоторые мероприятия
  • Скрыть приложения, нажав кнопку «Home»
  • Прекратить применение в Android Studio
  • Reopen приложение на устройстве, приложение должно восстановить последняя деятельность, не более основная информация

И его поведение, когда приложение не скрыто, не представляется возможным. И это связано с реализацией exit. Он сохраняет часть стека, но завершает видимую активность и перезапускает приложение, а затем восстанавливает стек.

+0

Получил это, так что это действительно не прекращает работу всего приложения только за эту активность. Я предполагаю, что это способ протестировать пользователей, которые некоторое время помещают приложение в фоновый режим для определенной активности и пытаются вернуться позже, правильно? –

+0

Да! Я только что тестировал 3 и 4 запущенные действия - он заканчивается только последним. И еще раз, я также предполагаю, что это способ проверить возврат с фона. Я использую его так и читаю об этом. –

+0

Отлично! Спасибо, это то, что я определенно не знал. –

Смежные вопросы