Я разрабатываю приложение, которое работает с базовым интерфейсом и сервисом, который может получать чрезвычайные ситуации ». Если пользователь находится в пользовательском интерфейсе и нажимает на него домой или появляется сообщение «Назад», служба продолжает работать. Если служба экстренной помощи получена, я хочу открыть Activity в пользовательском интерфейсе. Для этого мне нужно использовать startActivity в службе с флагом Intent FLAG_ACTIVITY_NEW_TASK.Обслуживание и запуск/перезапуск. Активность
Но это означает, что если пользовательский интерфейс все еще работает в фоновом режиме, он не открывается повторно. Многие из моих пользовательских интерфейсов с этого момента, похоже, происходят на старом, скрытом пользовательском интерфейсе, а не на новом пользовательском интерфейсе, который открыт. Также, если я закрываю текущий интерфейс, у меня иногда есть старый интерфейс.
Я бы хотел, чтобы это из службы я мог либо доставить старый ui на передний план, либо открыть новый, в зависимости от того, работает ли старый пользовательский интерфейс.
Я попытался использовать FLAG_ACTIVITY_CLEAR_TASK и FLAG_ACTIVITY_NEW_TASK вместе, чтобы очистить любые другие экземпляры пользовательского интерфейса, а затем открыть пользовательский интерфейс в новой задаче, но CLEAR_TASK - это API 11 и более; мое приложение поддерживает 10.
Любая помощь по вышесказанному оценивается.
Похоже, что я собираюсь пойти с этой опцией. Спасибо за помощь! – Stephen