【发布时间】:2017-01-01 11:28:20
【问题描述】:
来自Support Universal Links 中的 Apple 指南:
当您支持通用链接时,iOS 9 用户可以点击指向您网站的链接并无缝重定向到您安装的应用程序,而无需通过 Safari。如果您的应用尚未安装,点击指向您网站的链接可在 Safari 中打开您的网站。
但我很困惑,如果我的应用程序没有安装,并且我在另一个应用程序的 UIWebView 中点击我的应用程序的通用链接,系统会启动 Safari 应用程序来加载我的网站,还是仍然在 UIWebView 中加载它?
我在未安装应用时测试了一些应用的通用链接,它们从不启动 Safari 加载下一页,它们仍然在 UIWebView 中加载。
我想知道是否可以启动 Safari,但不能停留在 UIWebView。我需要在 apple-app-site-association 文件中进行任何配置吗?
实际上我想通过cookie来跟踪我的应用程序是从哪里安装的。我可以在Safari中存储一个带有下载页面信息的cookie,并在我的应用程序安装和打开时使用SFSafariViewController获取cookie并呈现根据 cookie 的不同视图。
【问题讨论】:
-
您可以将
http://替换为itms://或itms-apps://以避免重定向。 -
对于第三方应用来说,使用 URI 方案并不是一个很好的解决方案,因为如果没有安装该应用,则会出现错误消息并且不会发生其他任何事情。
标签: ios iphone uiwebview deep-linking ios-universal-links