我打算使用来自FBSDK 的应用程序链接来邀请通过电子邮件使用我的 iOS 应用程序。
我知道如果我的 iOS 应用程序安装在设备上,当我选择链接并处理 URL 中的邀请令牌时,它将被打开。
但是如果我的应用程序没有安装呢?
用户从 App Store 安装后,我还可以处理邀请令牌吗?
希望曾经处理过这种情况的任何人都可以帮助我。
有很多原因会导致您尝试做的事情不会如您所愿。让我们潜入...
Facebook 于 2014 年创建了 App Links 作为开放标准,以解决 URI 方案深层链接的局限性。应用链接有两个主要组成部分:
http://
链接的网页目标的一组元标记。这些标签指定了本机应用程序内相应内容的自定义 URI 方案位置,以及未安装应用程序时应发生的行为。App Links 应该是改变世界的开源标准,使应用程序到应用程序的深度链接变得简单和通用。不幸的是,Facebook 已经决定他们实际上不想要那个世界(让用户留在 Facebook 应用程序内对他们来说更好——如果你不相信我,请参阅即时文章),这意味着应用程序链接标准基本上已经死了。iOS Facebook 应用程序不再支持它,而且Applinks.org现在甚至不是一个单独的网站。
即使 Facebook 仍然支持它,App Links 标准也有一个严重的缺陷:它需要源应用程序和目标应用程序的工作。虽然元标记组件被广泛采用,但路由引擎的唯一主要实现是在核心 Facebook 和 Messenger 应用程序中。
为了按您的需要运行,可以从电子邮件中的链接进行深层链接,路由引擎组件需要在您的链接可能被点击的任何电子邮件应用程序中实现。这是永远不会发生像苹果,或Gmail应用程序的默认iOS邮件应用程序的应用程序,例如。
延迟深度链接(Deep Linking
指使用链接将您的应用程序直接打开到特定内容,Deferred
意味着即使未先安装该应用程序也能正常工作)需要远程服务器来关闭循环。你可以自己构建这个,但出于很多原因,您确实不应该这样做,其中最重要的是您有更重要的事情要做。您会注意到,两个 App Links 组件都没有包含在安装过程中保留链接数据的删除服务器,因此核心 App Links 标准从未正确支持延迟深度链接。Facebook 广告利用 FBSDK 与应用程序链接一起提供的延迟深度链接的部分支持,但这仅在 Facebook 应用程序中单击链接/广告并且接收应用程序集成了 FBSDK 时才有效。
从 App Links 开始,延迟深度链接仍然很复杂。URL 方案不起作用,因为如果未安装应用程序,它们总是会失败并显示错误。Apple 较新的iOS 9+ 中的通用链接更接近,因为如果未安装应用程序,它们至少不会触发错误,但您仍然需要处理将用户从您的网站重定向到 App Store。使用通用链接安装后,您无法将上下文传递给应用程序,因此您将无法将用户发送到正确的项目,而且实际上很多地方都不支持它们。
几乎所有的电子邮件链接都涉及某种点击跟踪,这总是作为链接包装重定向来实现的。如果用户没有安装您的应用程序,这在技术上不是问题,但如果他们安装了,通用链接将无法与包装的链接一起使用。如果您自己构建它,您要么需要完全禁用电子邮件中的点击跟踪,要么接受深层链接在那里不起作用。
App Links 从来都不是您需要的解决方案。像Branch.io(完全披露:他们太棒了,我和他们一起工作)或 Firebase Dynamic Links 之类的免费服务正是您所需要的。这两种服务都支持延迟深度链接,来自 Facebook 或几乎任何电子邮件应用程序。Branch更强大,提供更多功能,并与主要电子邮件发件人合作,为深度链接电子邮件提供解决方案(当今市场上唯一的解决方案)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句