You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android端React Native迁移HTTPS登录重定向至Chrome Custom Tab异常求助

安卓React Native项目HTTPS重定向URL在Chrome Custom Tabs中无法正常回调的问题

我正在React Native安卓项目中,将社交登录的重定向URL从自定义URL协议(myscheme://)迁移到HTTPS协议(https://),计划使用基于Chrome Custom Tabs实现安卓功能的expo-web-browser。

遇到的问题

  • 更新后的https://重定向URL可以在expo-web-browser中正常打开,但openAuthSessionAsync的Promise无法正确resolve,浏览器窗口也不会自动关闭。
  • 若直接在默认Chrome浏览器中打开社交登录链接,整个流程能正常运行,但会弹出让用户选择在APP或浏览器中打开链接的提示,这是流程中不希望出现的步骤。
  • 我同时测试了expo-web-browser和react-native-inappbrowser-reborn,结果一致,这让我怀疑要么是AndroidManifest文件配置有误,要么是Custom Tabs本身不支持这种行为。

代码配置

调用openAuthSessionAsync的代码:

WebBrowser.openAuthSessionAsync('social-login-url', 'https://foo.bar/xxx', {
  preferEphemeralSession: true, // iOS only
});

AndroidManifest.xml中的intent-filter配置:

<intent-filter android:autoVerify="true">
  <action android:name="android.intent.action.VIEW" />
  <category android:name="android.intent.category.DEFAULT" />
  <category android:name="android.intent.category.BROWSABLE" />
  <data android:scheme="https" android:host="foo.bar" android:path="/xxx" />
</intent-filter>

预期与实际结果

  • 预期:传入https://重定向地址后,认证完成时Custom Tab自动关闭,用户被重定向至对应的Deep Link。
  • 实际:用户停留在Custom Tab中的https:// URL页面,加载了Web应用的内容,无法回到APP。

内容的提问来源于stack exchange,提问作者Mark Gaucher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 02:15:12