CustomTabs 在 302 重定向后显示 ERR_UNKNOWN_URL_SCHEME

CustomTabs shows ERR_UNKNOWN_URL_SCHEME after 302 Redirect

我正在尝试使用自定义选项卡实施 OAuth2 登录流程,但在登录成功后,使用 url 检索 302 重定向,如下所示:"my.app:/oauth2/code?xxx".

现在我已经在 AndroidManifest 中声明了重定向 URI 来收听这个,但是看到了 ERR_UNKNOWN_URL_SCHEME:/

<intent-filter>
            <data
                android:host="oauth2"
                android:scheme="my.app"
                android:pathPrefix="/code"
            />

            <action android:name="android.intent.action.VIEW" />

            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
</intent-filter>

我尝试了不同的 url 方案来收听,但 none 似乎被触发以打开我的应用程序。

这个问题与另一个应用程序中发生的识别有关。因此,当我恢复 CustomTabs 时,不知何故上下文丢失了。 :/

基本上这就是我们想要做的:

MyApp -> CustomTabs -> 识别其他应用程序(从重定向) -> 恢复 CustomTabs(加载屏幕) -> 重定向到 MyApp。

但是由于无法进行第二次重定向,我们尝试换个角度解决问题。

我们的解决方案是分解身份验证流程:

MyApp -> CustomTabs -> 重定向到 MyApp -> 识别另一个应用程序 -> 重定向到 MyApp -> CustomTabs(加载屏幕) -> 重定向到 MyApp 并显示结果。

希望这至少能帮助遇到类似问题的人。