什么是 universal link
universal link 是IOS 9之后推出的一种能够方便地通过https的链接的形式来启动App的方法
相比较于 scheme 跳转 universal link的优势在哪里
- 唯一性 scheme 由于是自定义的方式,所以存在不同的App定义同一个scheme的场景,在同时安装的场景下,会发生跳转互串。而universal link 本身基于https协议进行跳转,所用域名具备唯一性,一般不会发生两个App用同一个universal link的场景。
- 安全 当用户下载app时,会去配置的config网址下载universal link的配置,这个后台的根目录其它人是没有权限进行更改的。目前一些分享SDK已经渐渐半强制使用universal link,主要也是为了安全性。
- 功能更全面 app 未安装时 scheme 是无效的,但是universal link可以去走一个落地页,引导用户去安装app。https的方式使用起来也比scheme的方式更便捷
开始配置universal link
1、需要一台具备https的服务器,能够将文件上传到根目录下 (尝试过阿里云oss,无后缀的格式不支持,所以没调试通)
2、准备一个json的配置文件 apple-app-site-association 上传到服务器上的根目录下
{ "applinks": { "apps": [], "details": [ { "appID": "9JA89QQLNQ.com.apple.wwdc", "paths": [ "/wwdc/news/", "/videos/wwdc/2015/*"] }, { "appID": "ABCD1234.com.apple.wwdc", "paths": [ "*" ] } ] }}
3、苹果开发者中心 打开 Associated Domains 模块,更新对应证书,工程上添加对应的 domains 通用链接地址
4、下面就可以打包验证了 (安装包的时候不要开代理) 正常的话输入通用链接在safari下是如下的现象