从动态链接接收 Firebase 重定向 URL
Posted
技术标签:
【中文标题】从动态链接接收 Firebase 重定向 URL【英文标题】:Receive Firebase redirected URL from dynamic link 【发布时间】:2017-10-15 10:03:15 【问题描述】:我需要帮助来获取我从 firebase 动态链接仪表板创建的 URL。我只搜索了2天,我找不到任何东西。这是我要提的一张图片。
我从仪表板创建了深层链接,然后我写了如下内容。我想得到我在图中圈出的网址。
FirebaseDynamicLinks.getInstance()
.getDynamicLink(getIntent())
.addOnSuccessListener(this, new OnSuccessListener<PendingDynamicLinkData>()
@Override
public void onSuccess(PendingDynamicLinkData pendingDynamicLinkData)
// Get deep link from result (may be null if no link is found)
Uri deepLink = null;
if (pendingDynamicLinkData != null)
deepLink = pendingDynamicLinkData.getLink();
Log.e("SplashActivity", "deepLink " + deepLink);
// Log.e("SplashActivity", pendingDynamicLinkData.zzbyk().getString("Url"));
)
.addOnCompleteListener( this, new OnCompleteListener<PendingDynamicLinkData>()
@Override
public void onComplete(@NonNull Task<PendingDynamicLinkData> task)
if (task.getResult() != null)
Log.e("SplashActivity", " task ");
)
.addOnFailureListener(this, new OnFailureListener()
@Override
public void onFailure(@NonNull Exception e)
Log.e("Splash", "getDynamicLink:onFailure", e);
);
通过上面的代码,我可以捕捉到深层链接。 有什么建议吗?
【问题讨论】:
请检查调试页面顶部的消息以获取您的链接ysep8.app.goo.gl/HuKx?d=1 确保您根据 Firebase 动态链接文档配置了您的 ios 和 android 应用程序。如果您需要帮助,请随时打开 Firebase 支持票或在此处发表评论。 感谢您的回复。我在 Firebase 中为 IOS 和 Android 配置了动态链接仪表板。它有效,但我需要获得短链接。在我们的 IOS 应用程序中,我们可以通过 IOS 中的网页 URL 获取它。它返回短链接。但我不知道为什么无法获取已在 Firebase 动态链接控制台中定义的短链接。它只是我们必须在android中以编程方式创建所有动态链接的唯一方法吗?你发给我的链接我看了。在我的调试页面中似乎And和IOS的架构不同,我认为这很正常。 @OleksiyIvanov 嗨@OlcaySönmez。你是怎么解决这个问题的。我面临同样的问题。我无法获得完整的 URL。请告诉 【参考方案1】:包含 iOS 应用信息的链接的调试页面示例https://test3p.app.goo.gl/?link=http://www.google.com&isi=585027354&ibi=com.google.AppInvitesSample.dev&d=1 当您使用 iOS 参数配置链接时,您应该会看到类似的内容。如果你添加 Android 参数,你会看到 Android 分支也展开了。
创建 Firebase 动态链接时,请确保您填写了“为 iOS 定义链接行为”和“为 Android 定义链接行为”部分。对于您的链接https://ysep8.app.goo.gl/HuKx,您似乎没有填写这些部分。
“为 iOS 定义链接行为”部分的示例:
【讨论】:
再次感谢您的回复。我已经在控制台中执行了此操作,并且我已经准备好了我的短链接。我要问的是,当任何人点击链接时,如果它存在,它将打开应用程序。如果它不存在,那么将重定向到商店。我的问题是,当它通过链接打开应用程序时,我想通过 FirebaseDynamicLinks.getInstance().getDynamicLink(getIntent()) 捕获短链接。但是当应用程序出现并调用我上面写的方法时,我可以仅捕获后备 URL 而不是短 URL。很高兴与您交谈,这有助于我更正链接。 嗯,为什么你的应用需要短链接?通常 App 对 deepLink 感兴趣。 FDL 短链接只是将 deepLink 传递到您的应用程序的一种方式。这个答案有帮助吗? ***.com/questions/45703215/… 我需要短链接,因为要知道点击了哪个深层链接。我知道我们可以在 firebase Analytics 中查看它,但我也向我的服务发送了请求。似乎我无法收到它,所以我发现它有一个 Rest api,但我也有一些问题。如果你看看这个问题,你会介意吗。我今天在***上写了这个问题。这是链接:***.com/questions/46810942/… 感谢您的关注。 评论了 REST API 问题。关于从 iOS SDK 获取短链接:我已经计划了从 SDK 返回原始长短链接到 App 的功能。没有时间表上的承诺。另一种跟踪方式:为每个链接添加一些随机数作为深度链接参数。您可以使用此编号来识别链接。 此处快速更新:我们刚刚开始编辑现有链接。因此,您可以通过以下方式解决:1)创建链接; 2) 编辑链接并将短链接后缀作为参数添加到深层链接;以上是关于从动态链接接收 Firebase 重定向 URL的主要内容,如果未能解决你的问题,请参考以下文章
通过 Safari 打开时,Firebase 动态链接不会重定向到应用程序
如果应用程序未以编程方式安装 firebase 动态链接,则重定向到 iOS App Store