У меня есть действие, которое называется тематическим диалогом. Я видел, что если диалог показывается, а затем я нажимаю кнопку «домой», а затем, используя диспетчер задач, перезапускает приложение, этот активный диалог будет активностью, которую запускает приложение, без каких-либо других действий, доступных для возврата к. То есть, активность, выполнявшаяся при загрузке активности диалога, не выполняется. Поэтому у меня просто есть эта диалоговая тема, зависающая над рабочим столом. В этом есть смысл.Активность Android, которую я никогда не хочу начинать с
Оглядываясь на жизненный цикл Android-активности, ОС запоминает последнее действие и пытается его перезапустить. Поэтому я создал все методы on * в моей деятельности (onResume, onRestart и т. Д.). То, что я нашел, было действительно озадачивающим. Когда я перезапустить приложение из диспетчера задач, называются следующие методы:
onCreate()
onResume()
onStop()
onDestroy()
Где я был на самом деле просто ожидал
onRestart()
onCreate()
onResume()
- Почему OnStop и OnDestroy вызывался сразу же? И почему диалог все еще отображается, даже если onDestroy вызывается?
- Как настроить это приложение так, чтобы оно никогда не начиналось только в этом диалоговом окне? Я был бы в порядке с перезапуском приложения с тем же «родительским» действием и над ним над ним (то есть, как я его оставил), или только с запущенным родительским действием, и диалог отклонен.
Я попробовал то, что вы предложили, и поместил вызов finish() в onStop(), но это не сработало. Это ничего не изменило. Он по-прежнему перезапускается в диалоговом режиме. – MrGibbage
О, и у меня также есть noHistory = "true" и finishOnTaskLaunch = "true" в манифесте. – MrGibbage
Попробуйте поместить вызов finish() в метод onPause() вашей активности. – Krylez