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

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

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

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

最佳答案

可能有助于调试案例的一些想法。

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

如果未安装 iOS 应用程序,Firebase 动态链接(在您的情况下)应导航至 iOS AppStore。你能在这里发布你有问题的短或长动态链接吗?或者随时打开 Firebase 支持错误或发送电子邮件至 oleksiyi at google.com。

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

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

编辑(通过电子邮件同步后这里是摘要): 原因是动态链接中的 AppStoreID 应该与您在项目的 Firebase 控制台中输入的应用程序的 AppStoreId 相匹配。

修复 #1: 我了解到您的应用程序尚未发布。您仍然可以在应用程序从您的 iTunesConnect 门户发布之前获得 AppStore ID。另请参阅有关 App https://stackoverflow.com/a/12764735/2546685 的 AppleID(与 AppStore ID 相同)的评论

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

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

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

关于ios - 处理 firebase 的 iOS 动态链接时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45680893/

相关文章:

iphone - 重新排序导致 subview 背景颜色清除

Firebase 数据库区分在线和离线数据

c++ - 从另一个 dll 链接动态 dll 会导致错误

c - 如何在 Linux 上硬编码动态库路径

iphone - iOS 4.3、5.0 和 6.0 中仅纵向应用程序中纵向 UIWebView 的横向全屏 youtube 电影

ios - Swift - 在 for 循环中创建具有不同名称的变量

ios - 在 UITableView 上嵌入 UISearchController 时出现奇怪的白条

typescript - 类型 '{ query: { orderByChild: string; equalTo: string; }; }' 的参数不可分配给类型 'FirebaseListFactoryOpts' 的参数

javascript - 与 Firebase 身份验证 react

linux - 如何使用 GCC/LD 设置 RPATH 和 RUNPATH?