【问题标题】:DFL parameter in Firebase Dynamic Links BuilderFirebase 动态链接生成器中的 DFL 参数
【发布时间】:2017-07-17 11:30:50
【问题描述】:

我需要使用 Android 上的 Dynamic Link Builder API (https://firebase.google.com/docs/dynamic-links/android/create) 以编程方式构建动态链接。这是唯一适用于我的情况的选项,因为我需要跟踪点击数据并缩短链接。

此链接可以在桌面上打开,但问题是该链接仅适用于移动应用程序 - 网站无法识别此链接(此行为是故意的)。我希望将桌面用户定向到网站的主页。

这是来自 Firebase 文档的引用:

当用户在桌面网络浏览器上打开动态链接时,他们将加载此 URL(除非指定了参数 dfl)。如果您没有与链接内容等效的 Web,则 URL 不需要指向有效的 Web 资源。在这种情况下,您应该设置从该 URL 到例如您的主页的重定向。

我知道我需要 dfl 参数。 (dfl 是要在桌面上打开的链接,覆盖参数链接。)如何在 Android 上使用 Dynamic Links Builder 指定 dfl 参数?

我知道我可以通过手动构建动态链接来指定 dfl - https://firebase.google.com/docs/dynamic-links/create-manually 但是这种方法对我没有用,因为它有这样的限制:

如果您不需要在 Firebase 控制台中跟踪点击数据并且您不在乎链接是否很长...

有没有人知道正确的解决方案或一些技巧来实现这一目标?任何想法/想法将不胜感激!

【问题讨论】:

    标签: android firebase firebase-dynamic-links


    【解决方案1】:

    看来,这个简单的追加确实有效...

    当构建器组成 Uri 时,我在它后面加上 &dfl=XXXXX

    当我尝试在浏览器 PC 上打开此链接时,它会将我定向到 dfl 参数中的 URL,但在设备上,它会打开 Play 商店或应用程序(如果已安装)。

    没有这种方法让我很困惑,但找到了解决方案。

    【讨论】:

    • 是的,应该可以。我可以确认该参数当前在 Android api 中没有设置器。
    • 您可以使用setLongLink function
    • 嗨,Alexandr,我尝试了你的方法,但没有得到预期的结果,你能发布你使用的最终链接吗?
    • @Juanje 我查看了他们的文档。参数名好像改了:dfl -> ofl 看看:firebase.google.com/docs/dynamic-links/create-manually如果有帮助请告诉我。我有这样的事情:` String longDynamicLink = "jasid384234.app.goo.gl" + "?apn=android.app.id" + "&ibi=ios.bundle.id" + "&link=" + urlEncodedRefLink + "&dfl=" + URLEncoder .encode(dflLink, "UTF-8");`
    • 感谢@AlexandrKarpovich,我将尝试手动制作,因为我将此参数附加到使用提供的方法生成的默认链接中,但仍然无法正常工作。我要显示的链接是 Play 商店链接,这是默认行为,但也在桌面浏览器中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-25
    • 1970-01-01
    • 2017-02-16
    • 1970-01-01
    • 1970-01-01
    • 2018-09-24
    • 2012-09-18
    相关资源
    最近更新 更多