Я знаю, что у Android нет onPause уровня приложения, как у Activity с onPause, но, похоже, мне нужна аналогичная функциональность.Я задал (немой) вопрос некоторое время назад (/4446514/proverka-sposoba-reanimirovaniya-deistviya)) и понял, что onPause / onResume даст мне то, что я ищу: возможность узнать, было ли действие перенесено в фоновый режим (либо с помощью кнопки Home, открываядругое приложение, телефон спит и т. д.).
Проблема в том, что onPause также запускается в Activity, когда я перехожу из одной Activity в моем приложении в другое. Поэтому я иду по пути поискаКАЖДЫЙ ЕДИНСТВЕННЫЙ способ, которым пользователь может перейти от Активности к Активности в моем приложении (а их от 15 до 25) и установить флаг непосредственно перед каждым инициируемым пользователем переключателем Активности. Затем в onResume я проверяю этот флагэто X, я знаю, что это было инициированное пользователем onResume. Если флаг Y, я знаю, что это результат нажатия кнопки «Домой», спящего телефона и т. д.).
Это только кажетсякак большой грязный клудж.Есть ли способ лучше?
(Я добавляю это, чтобы помочь, чтобы не путать: моя цель - иметь (очень раздражающий, я знаю) экран с паролем, который появляется каждый раз, когда приложение уходит с переднего плана по любой причине (даже экран)sleep). Я планировал использовать onPause / onResume, чтобы проверить, когда вывести действие Passcode, но onPause срабатывает каждый раз, когда я изменяю Activity, и поэтому мне нужно добавить больше.)