首页 文章

当我的应用程序未被安装时,UIWebView中的iOS通用链接将启动Safari?

提问于
浏览
1

来自Support Universal Links的Apple指南:

当您支持通用链接时,iOS 9用户可以点击指向您网站的链接,无需通过Safari即可无缝地重定向到已安装的应用程序 . 如果您的应用未安装,点击指向您网站的链接即可在Safari中打开您的网站 .

但我很困惑,如果我的应用程序没有安装,我在另一个应用程序的UIWebView中点击我的应用程序的通用链接,系统会启动Safari应用程序加载我的网站,还是仍然加载到UIWebView?

我在未安装应用程序时测试某些应用程序的通用链接,并且他们从未启动Safari来加载下一页,他们仍然将其加载到UIWebView中 .

我想知道如果可以启动Safari,但不能留在UIWebView.Do我需要 apple-app-site-association 文件中的任何配置吗?

实际上我想通过使用cookie来跟踪我的应用程序的安装位置 . 我可以在Safari中存储一个带有下载页面信息的cookie,并在安装和打开我的应用程序时获取带有 SFSafariViewController 的cookie,并根据曲奇饼 .

1 回答

  • 1

    您要构建的内容称为'deferred deep linking' . 这(加上更多)正是我们在Branch.io提供的 . 如果您想避免自己配置它的头痛,请看一下 . 像Pinterest,Airbnb和Tinder这样的应用程序都使用我们这个原因 .

    Apple的文档指的是独立Safari浏览器的默认行为 . 使用 UIWebView 处理应用程序内部的链接取代了这一点,并且无法自动从原始应用程序退回到主Safari应用程序中 .

    解决方法是将数据存储在您自己的后端 . 正如您所发现的那样,依赖于设备本身的cookie传递在许多情况下都不会起作用 .

相关问题