iOS Universal Links(通用链接)详细教程

一:Universal Links是用来做什么的?

iOS9.0推出的用于应用之间跳转的一种机, 通过一个https的链接启动app。如果手机有安装需要启动的app,可实现无缝跳转。如果没有安装,会打开网页。


二:Universal Links实现步骤

1:找到app的Bundle Identifler 和Team ID并记录

Bundle Identifler所在的位置 :

图1

Team ID所在的位置:打开https://developer.apple.com/account页面,登录apple 开发者账号,划到页面下方,找到会员资格详细信息


图2



2:app添加Associated Domains

图3
图4


图5

Associated Domains格式:applinks:域名  例如:applinks:developer.apple.com


3:创建apple-app-site-association文件

 新建一个txt文件,命名:apple-app-site-association ,将以下json文本复制进去,并修改teamID和Bundle Identifler。

{"applinks":{"apps":[],"details":[{"appID":"YourTeamID.YourBundleIdentifler","paths":["*"]}]}}


details:是数组,可以有多个数据,即可支持多个app

appID:team ID和Bundle Identifler组成,中间有个.

paths:可以指定路径,*是通配符,即该域名下的所有路径都可以访问app

保存以后,txt文件需要去掉后缀发给后台开发人员

注意事项:文件需要存放在后台的根目录下的.well-known,最终的访问路径是:https://域名/.well-known/apple-app-site-association

文件url在safari打开,右击选择检查元素,如下:

图6

和后台调试的时候,曾因为这个文件存放有问题,导致一直无法跳转

三:测试成果

以上步骤完成就可以直接测试啦

测试方法1:

重新安装一个最新的,并启动一下app。在浏览器输入Associated Domains的域名和apple-app-site-association文件中的允许路径,例如上文中的域名是developer.apple.com,path是*,所以在浏览器输入https://developer.apple.com(也可以输入https://developer.apple.com/123 因为path写的全路径,所以只要是https://developer.apple.com开头的都可以识别),就可以看到下方效果(safari自动弹出打开app的弹框,点击打开可以跳转到app):


图7

测试方法2:

在备忘录输入https://developer.apple.com,长按该链接,可以弹出app选项(点击在app中打开,可以直接跳到app里),如下图:

图8

四:问题统计

1:为什么完成上述的Universal Links配置步骤还是无法跳转?

答:第一步:核对apple-app-site-association文件的appID的Bundle Identifler 和Team ID是否正确。

       第二步:app是否是重新安装,或者第一次启动,要确保app下载了apple-app-site-association,后台可看到请求日志

       第三步:核对apple-app-site-association文件的格式和内容可参考图6,apple-app-site-association文件相关配置可让后台技术人员查阅相关资料

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容