从应用内打开时,阻止 Firebase 动态链接重定向到浏览器
Posted
技术标签:
【中文标题】从应用内打开时,阻止 Firebase 动态链接重定向到浏览器【英文标题】:Stop Firebase Dynamic Links from redirecting to browser when opened from within app 【发布时间】:2021-03-03 20:05:00 【问题描述】:我们希望用户完成他们的个人资料,因此会弹出一条应用内消息,如果他们接受,它会将他们重定向到编辑个人资料页面。它正在工作,但它重定向到浏览器,返回应用程序,然后完成导航到个人资料页面。有没有办法切断浏览器重定向?
我尝试在 androidManifest.xml 中设置意图过滤器
<intent-filter>
<data android:host="@string/firebaseDynamicLinkDomain" android:scheme="http"/>
<data android:host="@string/firebaseDynamicLinkDomain" android:scheme="https"/>
</intent-filter>
这里是我们初始化的地方
export const initialize = async () =>
try
disposeOnLink = dynamicLinks().onLink(handleLink);
catch (e)
throw e;
;
然后处理链接
const handleLink = (link: string) =>
if (link.url === 'https://mykomae.page.link/edit-profile')
navigateToEditProfile('profile');
;
所以它很实用,但看起来很糟糕,我希望避免这种行为。
【问题讨论】:
【参考方案1】:自您发布以来已经有一段时间了,但我认为您可能缺少意图过滤器。只需将 example.com 替换为您的域即可。
https://firebase.google.com/docs/dynamic-links/android/receive#add-an-intent-filter-for-deep-links
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data
android:host="example.com"
android:scheme="https"/>
</intent-filter>
【讨论】:
以上是关于从应用内打开时,阻止 Firebase 动态链接重定向到浏览器的主要内容,如果未能解决你的问题,请参考以下文章