即使已安装应用,Firebase 动态链接也始终会转到应用商店网址
Posted
技术标签:
【中文标题】即使已安装应用,Firebase 动态链接也始终会转到应用商店网址【英文标题】:Firebase dynamic link always goes to app store URL even if the app is installed 【发布时间】:2017-05-30 01:39:03 【问题描述】:我正在尝试将 Firebase 动态链接集成到 ios 应用程序中,但问题是即使安装了该应用程序,动态链接也会将我带到应用程序商店页面以从应用程序商店下载该应用程序。 有没有人遇到过同样的问题并有相同的解决方案。
【问题讨论】:
这里也一样,我也在找解决办法。 您能否确认在您的应用中正确设置了通用链接?所以你已经在应用程序中为 [appcode].goo.gl 域设置了域关联,并且你已经在 Firebase 控制台中设置了你的团队 ID?如果您不想公开分享详细信息,请联系我们的支持团队:firebase.google.com/support/contact/troubleshooting github.com/firebase/quickstart-ios/issues/282 Same here...如果我设置forcedRedirectEnabled = true (efr=1)
,即使安装了应用程序,它也会始终重定向到应用程序商店。如果我将其设置为 false,则工作正常。
@DenisParchenko:你找到解决这个问题的办法了吗?
【参考方案1】:
通过 firebase 控制台编辑了链接。启用“跳过应用预览页面”和禁用“不支持通用链接时使用自定义方案”后,我总是被重定向到应用商店。
我的解决方案是同时启用通用链接和自定义 方案。
不能说为什么,但也许它会帮助某人。
【讨论】:
【参考方案2】:花了我一整天的时间,我终于弄明白了。如果您的应用上线,它就可以工作,只需在 Firebase 应用设置中设置 App ID 和 TeamID。
当应用未上线并且我们正在设置另一个应用 ID 时会出现问题。只需添加以下行,它就会像魅力一样工作:
FirebaseApp.configure()
FirebaseOptions.defaultOptions()?.deepLinkURLScheme = Bundle.main.bundleIdentifier
使用您的捆绑包 ID 设置 deepLinkURLScheme。
【讨论】:
【参考方案3】:TL;DR:要使其正常工作,您还必须在应用设置中将 Firebase 动态链接设置为通用链接。为此,请参见下文。
我的动态链接可用于预览页面,但随后我添加了“&efr=1”以跳过预览页面并直接重定向到 App Store 或我的应用。它适用于预览页面,因为它调用了已在应用程序中设置的通用链接。
示例:我的应用名为 Spontit。预览页面有效,因为“打开”按钮重定向到链接到我的应用程序的 spontit.com。但是动态链接是 spontit.page.link - 一个不同的域名 - 因此,如果您跳过预览页面,它会打开 spontit.page.link 而不是 spontit.com 在 Safari 中,所以不是我的应用程序,随后总是重定向到 App Store。
您必须将自定义动态链接(例如 spontit.page.link)设置为通用链接。请按照以下步骤操作。
来源:https://firebase.google.com/docs/dynamic-links/ios/receive
【讨论】:
【参考方案4】:我遇到了完全相同的问题。
为了解决这个问题,我放弃了 href 属性并使用 onclick on <a/>
<a onclick="location.href=https://somedynamiclink.url">Dynamic Link</a>
请注意,标签上没有 href 属性。
【讨论】:
以上是关于即使已安装应用,Firebase 动态链接也始终会转到应用商店网址的主要内容,如果未能解决你的问题,请参考以下文章
无论是不是安装了应用程序,动态链接始终打开 App Store
应用不在后台时无法识别 Firebase 动态链接 (iOS)