Как закрыть приложение при нажатии кнопки «Домой»

Вопрос:Привет У меня есть приложение с более чем 20 активностями. Я хочу закрыть свое приложение, когда нажата кнопка "Домой". Лучший ответ: В Android нет понятия "закрыть мое приложение". Android избавится от ваших действий, а затем ваш процесс, после некоторого периода бездействия со стороны пользователя. Ответ №1Вы можете использовать флаги launchMode и clearTaskOnLaunch в своей корневой

Вопрос:

Привет У меня есть приложение с более чем 20 активностями. Я хочу закрыть свое приложение, когда нажата кнопка “Домой”.

Лучший ответ:

В Android нет понятия “закрыть мое приложение”. Android избавится от ваших действий, а затем ваш процесс, после некоторого периода бездействия со стороны пользователя.

Ответ №1

Вы можете использовать флаги launchMode и clearTaskOnLaunch в своей корневой активности из вашего AndroidManifest.xml:

android:launchMode=»singleTask» android:clearTaskOnLaunch=»true»

Когда вы снова запустите свое приложение, все действия будут убиты.

Ответ №2

Вы не хотите делать System.exit() – это не так, как обычно работает жизненный цикл Android активности (читайте this).

Что вам нужно сделать, это переместить приложение на задний план с помощью moveTaskToBack(). Затем Android будет поддерживать ваше приложение в фоновом режиме и убить его, если оно не используется, и что-то нуждается в его ресурсах позже.

Если вы хотите закрыть все открытые действия, когда ваше приложение больше не видно, вы можете установить noHist = “True” для всех дочерних действий (оставите основное действие с noHist = “False”, хотя). Это приведет к тому, что вместо возобновления вашего приложения в последнем действии, на котором они были, он откроет его в “основной” активности (т.е. Будет, как если бы они просто перезапустили приложение).

В любом случае, прочитайте следующие ответы для получения дополнительной информации: Закрыть приложение и запустить главный экран Android

Ответ №3

У меня та же проблема. Я пишу банковское приложение, и по контракту мне необходимо выйти из системы (или выйти), когда приложение будет помещено в фоновое изображение. Существуют очевидные проблемы с безопасностью.

Есть несколько способов, которые я хотел бы сделать:
1. Кнопка “Перехватить домашнюю кнопку” (и кнопку “Назад” для активности корня) нажмите события, чтобы вызвать выход из системы и/или закончить()
2. В методе onStop() для каждого действия определите, остановлена ​​ли активность из-за нового действия, показываемого – если нет, предположите, что приложение помещается в фоновый режим, поэтому выйдите из системы и/или закончите()

Первый может не работать, если уведомление доставляется на передний план, а затем пользователь нажимает на него (я еще не исследовал его). Или, возможно, есть другие способы добавления приложения в фоновом режиме, не нажимая эти кнопки.

Второй способ звучит грязно и сложно поддерживать

Id приветствую любые другие идеи
Портьеры

Я знаю, что андроид был разработан таким образом, но кажется наивным думать, что приложениям не требуется событие applicationOnStop

Ответ №4

Привет, ребята, я понял, что вам нужно знать, когда приложение идет в фоновом режиме и как его обнаружить, и если я ошибаюсь, PLZ исправьте меня —-

  • Пользователь может пойти в фоновом режиме, если приложение ur не предоставляет никакого способа, нажав клавишу “Назад” или “Домашний ключ”.

  • Вам нужно использовать методы “dispatchKeyEvent (событие KeyEvent)”, чтобы получить событие основного ключа или событие back key, и после получения события вы можете выполнить свою задачу.

  • вы даже можете ограничить пользователя нажатием любой клавиши, но вы не можете управлять домашним ключом.

Оцените статью
Добавить комментарий