Firebase动态链接未打开应用程序iOS
我已经在我的设备上本地开发并安装了一个iOS应用程序 并且在info.plist中将自定义方案设置为Firebase动态链接未打开应用程序iOS,ios,firebase,firebase-dynamic-links,Ios,Firebase,Firebase Dynamic Links,我已经在我的设备上本地开发并安装了一个iOS应用程序 并且在info.plist中将自定义方案设置为mydlink 将关联域设置为weel:applinks:.app.goo.gl 在firebase上创建的动态链接为: https://<myapp>.app.goo.gl/?link=http://<mysite.com>/&ibi=<app bundle id>&ius=mydlink&ifl=https://itunes.appl
mydlink
将关联域设置为weel:applinks:.app.goo.gl
在firebase上创建的动态链接为:
https://<myapp>.app.goo.gl/?link=http://<mysite.com>/&ibi=<app bundle id>&ius=mydlink&ifl=https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id%3D<app store id>%26mt%3D8&pt=<app store id>
https://.app.goo.gl/?link=http:///&ibi=&ius=mydlink&ifl=https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id%3D%26mt%3D8&pt=
当我打开或单击动态链接时,它会在“应用商店”应用程序中打开应用程序页面,而不会通过安装的应用程序打开应用程序本身
我在这里遗漏了什么?请确保在firebase控制台中为您的应用程序设置了团队Id。(然后需要下载并导入.plist文件)
这为我解决了问题。我很抱歉回复太晚-我希望您的问题已经解决,这对其他可能遇到相同问题的人有帮助 iOS 9+可能存在一个或多个问题;动态链接依靠苹果的通用链接在iOS 9+上打开应用程序,这些建议旨在解决通用链接和Firebase的问题,与SDK没有直接关系
如果您使用的是iOS 9,则将使用通用链接。通用链接在很多情况下都不起作用,例如:
- 如果你使用模拟器
- 如果您试图在设备上的safari中直接打开链接(在浏览器的地址字段中键入该链接)
我花了很多时间尝试这一点,但始终无法让它以可靠的方式在模拟器上工作。我最终做的是通过电子邮件将链接发送给我,然后从收件箱中打开它。那它每次都有效 集成Firebase动态链接后,示例链接立即开始在具有iOS 8的设备上工作。对于iOS 9设备,如其他答案所述,使用通用链接机制。这意味着苹果需要更新用于验证深度链接双重身份验证的授权数据。根据苹果公司的报告,这可能需要48小时
还有更多通用链接疑难解答提示。由于安装过程中Firebase的假设出现问题,Firebase动态链接不适用于我们(在iOS9上使用通用链接)。下面是我们如何修复应用程序上的问题: 将iOS应用程序添加到Firebase控制台项目设置时,Firebase会询问您的“团队ID”,并假定您的唯一应用程序ID的格式为TeamID.com.foo.bar 然而,在我们的例子中,这不是我们唯一的应用程序ID。当我查看我们的配置文件时(在developer.apple.com上,我找到了我们的配置文件并单击“编辑”),我发现我们唯一的应用程序ID实际上是某物ingelse.com.foo.bar 我必须进入Firebase控制台,在它要求团队ID的位置输入“SomethingElse”,即使这不是我们的团队ID。一旦我做出了更改,Firebase动态链接开始正常工作 Firebase似乎在假设您的唯一应用程序ID始终以您的团队ID开头,但情况显然并非总是如此
请注意,更改团队ID可能需要大量时间才能生效。通过检查应用程序id()的相应链接,您可以看到发生了更改。我也遇到了同样的问题。有趣的是,如果您在Chrome中打开动态链接,应用程序将直接成功启动。但在Safari中,它总是尝试打开AppStore,尽管应用程序已安装。我不知道为什么Safari在这种情况下不工作。当链接在Safari中打开时,它会显示一个“打开(项目名称)”按钮。如果按下此按钮2-3秒,它会要求首次将其打开到不同的应用程序中。它还会显示您的应用程序名称。如果您选择应用程序,它将打开您的应用程序。完成此操作后,如果您再次打开此链接并在safari中按下按钮,它将始终正常工作
这为我解决了这个问题。有时我们在关联的域权限中会犯错误。必须没有空间
applinks:mydomain.page.link
经历了同样的问题 我的解决办法是使用 标识符->应用程序ID->“my.App.ID”->前缀 您可以在以下网站上找到它: 而不是我使用的
.pbxproj
中的'DevelopmentTeam'
编号,并将其添加到Firebase控制台中iOS应用程序的团队ID
不要忘了下载一个新的.plist并将其添加到项目中。如果上述解决方案都不适用于您,请检查您是否在相关域中添加了activitycontinuation 我有个好消息 我总是听说在模拟器上测试动态链接是不可能的 但是现在我们可以在模拟器上测试firebase动态链接
我们也遇到了类似的问题。我们案例中的问题是,生成带有链接的电子邮件的软件生成了一个新的链接,该链接有一个304重定向到我们的深层链接。这不起作用
Dynamic Links -> choose your link -> Edit
<key>com.apple.developer.associated-domains</key>
<array>
<string>applinks:abc.page.link</string>
</array>
[domain]/.well-known/apple-app-site-association
[domain]/apple-app-site-association