У меня есть сценарий, в котором мое приложение выполняет ряд действий, а затем открывает действие браузера.Затем действие браузера аутентифицирует пользователя и вызывает обратный URL-адрес с пользовательской схемой, т.е. myapp: //finished.
Фильтр намерений используется для запуска отображения одного из существующих действий.По сути, я хочу, чтобы приложение вернулось к активности, которая отображалась до запуска операции «Браузер».
Проблема, с которой я столкнулся, заключается в том, что операция «Браузер» создает новую задачу, поэтому, когда браузер перезванивает и мойактивность загружается, новый экземпляр создается в задаче браузера, а не в оригинальной задаче моего приложения.Это приводит к тому, что моя активность воссоздается.
Task (created by my app)
1) Activty 1
2) Activty 2
Task (created by the browser)
3) Browser Activity
4) Activity 2 (new instance)
Я знаю, что есть флаги, которые можно использовать для возобновления существующих действий вместо их воссоздания, но они не работают каклюбое новое намерение, которое создается после того, как браузер ограничен стеком задач браузера.