Firebase 动态链接始终为空
Posted
技术标签:
【中文标题】Firebase 动态链接始终为空【英文标题】:Firebase Dynamic link always null 【发布时间】:2021-11-23 13:52:54 【问题描述】:我很难在 android 中正确配置 Firebase 动态链接。 (相同的动态链接在 ios 中也可以正常工作)
我从 Firebase 控制台创建了一个动态链接。生成的链接是这样的:
https://myexample.page.link/XzPY
这是 Firebase 中的配置:
在清单中我添加了这个意图过滤器:
<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="myexample.page.link"
android:scheme="https" />
</intent-filter>
Android 的行为也已设置为“在您的 Android 应用中打开深层链接”。
这是应该在我的 Activity 中处理动态链接的部分:
Firebase.dynamicLinks
.getDynamicLink(intent)
.addOnSuccessListener(this) pendingDynamicLinkData -> // ALWAYS NULL!
var deepLink: Uri? = null
if (pendingDynamicLinkData != null)
deepLink = pendingDynamicLinkData.link
如果我尝试从浏览器(从我的笔记本电脑)打开链接,我看到它被重定向到正确的页面。如果我尝试从 Android 打开相同的链接,我会看到两个错误:
-
该链接不会将我重定向到应用程序,但会显示选择应用程序或浏览器的选项。
如果我选择该应用,则待处理的动态链接数据始终为空。
【问题讨论】:
你解决了吗?我也面临同样的问题。 同样的事情也发生在我身上。如果我首先打开应用程序(不是从动态链接),然后将应用程序放在后台并从动态链接打开应用程序,它总是返回 null。 【参考方案1】:尝试添加这个
<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="YOUR_HOST_LINK"
android:scheme="http" />
<data
android:host="YOUR_HOST_LINK"
android:scheme="https" />
</intent-filter>
FirebaseDynamicLinks.getInstance().getDynamicLink(intent)
.addOnSuccessListener pendingDynamicLinkData ->
if (pendingDynamicLinkData != null)
【讨论】:
正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center。以上是关于Firebase 动态链接始终为空的主要内容,如果未能解决你的问题,请参考以下文章
无论是不是安装了应用程序,动态链接始终打开 App Store
打开 Firebase 链接后,在设备上重新安装应用程序时始终返回一个链接
动态创建的 Firebase 动态链接不适用于 Android