从 Firebase 动态链接中检索 UTMParameters

Posted

技术标签:

【中文标题】从 Firebase 动态链接中检索 UTMParameters【英文标题】:Retrieving UTMParameters from Firebase Dynamic Link 【发布时间】:2021-07-02 21:01:37 【问题描述】:

我最近对 ​​Firebase 动态链接进行了一些实验。

我按照文档指南设置应用程序(正确设置意图过滤器)。我从 Firebase 控制台生成了一个动态链接,using the optional parameters section for UTM.

然后我在我的活动中准备了代码以接收链接。

Firebase.dynamicLinks
    .getDynamicLink(intent)
    .addOnSuccessListener(this)  pendingDynamicLinkData ->
        var deepLink: Uri? = null
        var utm:Bundle? = null
        var extensions: Bundle? = null
        if (pendingDynamicLinkData != null) 
            deepLink = pendingDynamicLinkData.link
            utm = pendingDynamicLinkData.utmParameters
            extensions = pendingDynamicLinkData.extensions
        
    
    .addOnFailureListener(this)  e -> Log.w(TAG, "getDynamicLink:onFailure", e) 

我得到的结果是我可以收到实际的链接。但是,我想在控制台本身呈现的模式之后嵌入 utm 参数。我发现的材料很少,甚至 Firebase 文档也没有提到如何收集这些数据,所以我怀疑它是否真的可行。

但是,我注意到库中存在一些方法,“utmParameters”和“extensions”,听起来分别像 UTM 参数和扩展链接(应该包含其他参数,如“apn”) .

此外,在我的 ios 应用中,按照 Firebase 文档,我能够恢复这些数据。由于 Kotlin 中存在“utmParameters”和“extensions”方法,我认为在 Kotlin 中也应该可以这样做。但是,如果我尝试从我的 DynamicLink 中检索这些参数,我会得到空包(似乎恢复实际数据的唯一方法是“时间戳”,以及为我提供实际深度链接的“链接”)。

有人知道我如何恢复这些参数(无需在深层链接中传递它们)吗?或者是否有人有任何证据表明在 Kotlin 中无法恢复这些数据(如果不是通过深度链接)?

【问题讨论】:

【参考方案1】:

我发现了问题。

我没有正确设置 androidManifest。点击用于打开应用程序的突出显示链接,但意图没有被适当的意图过滤器捕获,因此在检索 pendingDynamicLinkData 时,它缺少我之前提到的扩展。

【讨论】:

以上是关于从 Firebase 动态链接中检索 UTMParameters的主要内容,如果未能解决你的问题,请参考以下文章

从 Firebase 动态链接中检索 UTMParameters

我无法检索应在 Android 上的意图数据内的 Firebase 动态链接

Firebase 动态链接链接统计

Vue.js:从 Firebase 存储中检索数据后如何异步加载模板?

如何在反应原生 Firebase 动态链接中从收到的链接中提取参数?

从 firebase 中删除创建的动态链接并使用 firebase 控制台创建新的自定义 URL