проблема перезапуска действия при нажатии клавиши Home

Мой сценарий:

  • у меня есть 3 мероприятия. из действия 2-Действие 3 …На Activity3 я нажимаю клавишу home

  • Затем из приложения Filemanager у меня есть zip-файл, который мне нужно импортировать. При нажатии на zip-файл мое приложение запускает и импортирует список устройств в упражнении 1.

  • Затем я перехожу к действию 2-действию 3.

  • Из действия 3 я нажимаю клавишу back. это приводит меня к действию 2. Я снова нажимаю клавишу back (она должна выйти из моего приложения из действия 2). Но вместо этого он снова приводит меня к действию 3. Оттуда я застрял в качестве ответа при нажатии клавиши Назад.

Я предполагаю, что, так как я нажимаю кнопку Home первый раз. действие 3 находится в задней части. Затем, когда я запускаю приложение из другого приложения ..я думаю, что было создано 2 экземпляра.

Я действительно не знаю, как решить эту проблему.

Я хочу заднюю ключевую функцию как :

Действие 3-back key-действие 2-BACK key-выход из приложения

2 ответа

  1. Я предполагаю, что, так как я нажимаю кнопку Home первый раз. действие 3
    в задней части Земли. Затем, когда я запускаю приложение из другого приложения ..я думаю
    Создано 2 экземпляра.

    Вы правы, по умолчанию, Androidесли вы не установите какой-либо флаг для activity, Вы сможете создать multiple instancesдля activity. В вашем случае, у вас есть несколько instancesactivity2 и 3.

    Чтобы достичь того, что вы хотите, я рекомендую, как показано ниже.

    От activity 1,того, когда вы звонитеstart activity 2, попробуйте добавить строку кода нижеintent, чтобы очистить backstackот activity.

    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);