Я столкнулся с ошибкой в моем приложении, когда оно запускалось с помощью кнопки "Открыть" в приложении Google Play Store (ранее называлось Android Market). Кажется, что запуск его из Play Store использует другое Intent
чем запуск его из меню значков приложения телефона. Это приводит к тому, что запускается несколько копий одного и того же действия, которые конфликтуют друг с другом.
Например, если мое приложение состоит из ABC Activity, то эта проблема может привести к стеку ABCA.
Я попытался использовать android:launchMode="singleTask"
на всех Деятельностях, чтобы исправить эту проблему, но у него был нежелательный побочный эффект очистки стека Деятельности от корня всякий раз, когда я нажимаю кнопку HOME.
Ожидаемое поведение: ABC → HOME → И когда приложение восстанавливается, мне нужно: ABC → HOME → ABC
Есть ли хороший способ предотвратить запуск нескольких операций одного и того же типа без сброса корневого действия при использовании кнопки HOME?