Приложение Android продолжает работать во внешнем браузере после перенаправления - PullRequest
0 голосов
/ 11 октября 2019

Как указано в заголовке, когда одно из действий моего приложения вызывается по специальной схеме из внешнего браузера (протестировано с Firefox), оно корректно возвращается к действию и работает как обычно. Однако проблема заключается в том, что если бы я открывал представление задач, я увидел бы, что действие продолжалось в задаче браузера, а задача моего приложения осталась при предыдущей активности.

Я запускаю браузер с:

val i = Intent(Intent.ACTION_VIEW)
i.data = Uri.parse(authUrl)
startActivity(i)

, что, в конечном итоге, приводит к перенаправлению в мое приложение по пользовательской схеме:

<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE" />
<data android:host="callback"
      android:scheme="d2app"
      android:pathPattern=".*"/>

Но, как вы могли видеть здесь , браузер остаетсяактивная задача и приложение выполняются в ней.

Есть ли определенный флаг / набор флагов, которые я должен добавить в намерение браузера? Я пропускаю что-то важное с фильтрами намерений для действия? Спасибо за любую помощь / указатели, которые вы можете дать.

Я прошу прощения, если я перепутал здесь базовую терминологию, я очень новичок в разработке приложений в целом.

1 Ответ

0 голосов
/ 12 октября 2019

Кажется, я исправил свою проблему, добавив android:launchMode="singleTask" к объявлению действия в манифесте, чтобы заставить его вернуться к исходному экземпляру действия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...