с фулл скрин интентом в foreground сервисе?
пояснение: есть 2 активити. главная (А) и Second(В). на А кнопка, которая через 3 секунды запускает foreground service с фулл скрин интентом на активити В. при запуске, В тушит сервис, а если сервис не был запущен - запускается А с чисткой бекстека. в целом, все это срабатывает нормально, и с заблокированным экраном, и с кликом на уведомление. однако, если провести следующую манипуляцию: запускаем сервис, выходим из приложения кнопкой «назад», блокируем экран, сервис запускает В, финишим его кнопкой (вызываем метод finish()), разворачиваем приложение, запускается В, видит, что сервис не запущен и запускает А с чисткой бекстека, снова запускаем сервис, сворачиваемся через хоум - то фулл скрин интент вообще не срабатывает. он просто разворачивает приложение на том последнем активити. клик на уведомление делает ровно тоже самое. хотя, по идее, должно открывать активити В. гугление и эксперименты с реквест кодами и флагами пендинг интента не дали никаких результатов.
Очень много букв. Можно то же по номерам, что происходит, какой стейт и действия предшествуют проблеме? События: 1. 2. 3 Приводят к состоянию Х Далее делаем А, должно быть Б, а получается С
дано: 2 активити (А и В) и foreground service. на А кнопка запускающая сервис по истечению 3х секунд. в сервисе фулл скрин интент открывающий В. на В кнопка finish закрывающаяя В алгоритм: 1) запускаем сервис 2) жмем назад (выходим из приложения) и блокируем экран, сервис запускает фулл скрин интент с В 3) жмем на В финиш 4) разблокируем экран, и разворачиваем приложение 4.1) разворачивается В, видит, что сервис не запущен, и запускает А с чисткой бекстека 5) снова запускаем сервис на А 6) жмем хоум и блокируем 7) сервис запускается, но фул скрин интент не срабатывает (В не открывается) ожидаемый результат после всего этого - должно открыться В. наблюдаемый результат - приложение просто разворачивается на А. клики на уведомление сервиса так же не запускают В, и просто разворачивают приложения
то есть, разница только в том, что клик по уведомлению запускает A, а надо б?
не просто запускает а тупо разворачивает приложение. а дальше ничего не происходит. хотя, по логике, должно запускать Б. я не передаю несколько пендинг интентов. только один, запускающий Б, и кладу в фулл скрин интент нотификейшена. тем не менее, после описанных выше манипуляций, оно не запускает Б. а просто разворачивает приложение. а там какое активити было открыто, на таком и развернет.
код создания нотификации покажи
Обсуждают сегодня