处理firebase的iOS动态链接时出错

时间:2017-08-14 18:36:51

标签: ios firebase dynamic-linking firebase-dynamic-links

我已经在服务器中实现了仅使用我的深层链接,捆绑ID和应用商店ID(使用Whatsapp作为测试用例)生成Firebase iOS动态链接的功能。

我可以在安装应用程序时触发重定向(阅读深层链接)。但是,当尚未安装应用程序时,深度链接始终用于重定向。因此,永远不会触发应用商店ID。背后有什么可能的原因吗?

1 个答案:

答案 0 :(得分:2)

结合可能有助于调试案例的想法。

Firebase动态链接的行为可能略有不同,具体取决于点击链接的iOS App。作为基线,我建议从发布链接到iOS Notes App并点击Notes App的链接开始。当这种情况有效时,您可以转到其他应用程序中的测试链接,如Safari,Facebook,WhatsApp等。

如果未安装iOS应用,Firebase动态链接(在您的情况下)应导航到iOS AppStore。您可以在此处发布您遇到问题的短期或长期动态链接吗?或者随时打开Firebase支持错误或发送电子邮件至oleksiyi google.com。

您可以尝试的另一种技巧:将&d=1附加到链接的末尾,然后在浏览器中打开链接。您将看到带有链接预期行为的调试页面。

作为替代方法,您可以在链接创建时从FIRDynamicLinkIOSParameters(此处为示例https://firebase.google.com/docs/dynamic-links/ios/create和此处docs https://firebase.google.com/docs/reference/ios/firebasedynamiclinks/api/reference/Classes/FIRDynamicLinkIOSParameters)指定fallbackURL。在这种情况下,链接应在未安装iOS应用程序时导航到此URL。

编辑(在此处通过电子邮件同步摘要): 原因是动态链接中的AppStoreID应与您在Firebase控制台中为项目输入的App的AppStoreId匹配。

修复#1: 我知道你的应用程序没有发布。在从iTunesConnect门户发布App之前,您仍然可以获取AppStore ID。另请参阅关于App https://stackoverflow.com/a/12764735/2546685

的AppleID(与AppStore ID相同)的评论

当您创建此类链接时,该链接将转到AppStore,但在实际发布之前,它不会打开您的应用页面。

修复#2: 如果您希望在App发布之前链接正常工作,您可以按照以下步骤操作:

  1. 在您自己的网站上创建着陆页,其中将显示如下内容:“App XYZ尚不可用”
  2. 将此着陆页网址指定为动态链接中的“ifl”参数;
  3. 创建动态链接;
  4. 与人分享链接;
  5. 当您的应用程序在AppStore中实际发布时,编辑登录页面,而不是在此处显示内容,请将服务器重定向到应用程序的AppStore页面。