Universal Link简介
Universal Link通用链接是ios9推出的通过链接启动app的功能
配置Universal Link
-
在开发账号中app的Identifiers勾选Associated Domains
企业微信截图_4071a3ce-4a73-4dc2-ad3f-5b275cb79b0d.png 在项目中配置添加Associated Domains
targets->Signing&Capabilites->Capability->Associated Domains
-
在Associated Domains中添加applinks:你的域名
企业微信截图_c004c71a-88fd-4d12-9ba9-50d20c9170d6.png
到这项目Universal Link配置完毕
Universal Link文件配置
这一步需要后台的同事配合,创建一个没有后缀的文件,命名为apple-app-site-association。内容大概如下:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "团队ID.应用id1",
"paths": [ "/demo1/*"]
},
{
"appID": "团队ID.应用id2",
"paths": [ "/demo2/*" ]
}
]
}
}
保存的文件上传到你的域名所对应的根目录或者.well-known目录下
验证apple-app-site-association是否正确
https://branch.io/resources/aasa-validator/
打开链接输入你的域名,全部通过后文件配置正确
Universal Link链接
如果配置的paths,则Universal Link为https://你的域名/paths配置的内容/
假设域名为www.baidu.com用文章上面的json内容则
应用1的Universal Link为:https://www.baidu.com/demo1/
应用2的Universal Link为:https://www.baidu.com/demo2/
如果paths为*,Universal Link就为你的域名
(这是个坑,一开始没研究很容易把https://www.baidu.com/apple-app-site-association当成链接。哭死!!)
Universal Link链接验证
-
在备忘录中长按Universal Link链接会出现 在“APP名称中”打开的选项,点击链接会直接打开你的app。
企业微信截图_60ac4c30-8c13-4db5-be92-4844c8c41577.png -
在Safari浏览器输入Universal Link链接,进入链接会出现打开app的按钮
企业微信截图_1e7d621b-5470-4015-97fc-c724859984a4.png
(如果没有出现打开删除app重装多试几次,不管项目修改Associated Domains还是文件配置修改,都删除重装app)
到此基本配置完成,Universal Link配置没问题的话其实微信分享也没多大问题。不过和Universal Link配置和微信分享一起搞的。出现了奇奇怪怪的问题。
微信分享之Universal Link验证不通过
错误1:
这个错误是SDK注册的Universal Link和微信开发账号注册的Universal Link不一样导致。
错误2:Universal Link配置正确,Safari链接和备忘录都有,注册的Universal Link链接也是一样,但分享跳转app会跳两次(除首次外)。调用微信SDK的检查方法如下
微信SDK日志:步骤0-----成功, check passed
微信SDK日志:步骤1-----成功, check passed
微信SDK日志:步骤2-----成功, check passed
微信SDK日志:步骤3-----成功, check passed
微信SDK日志:步骤4-----成功, check passed
微信SDK日志:步骤5-----失败, Universal Link check failed. The application is launched by WeChat via scheme, Common problems self-check guide: [微信开放平台App iOS端接入新版本SDK 常见问题自查指引][https://developers.weixin.qq.com/community/develop/doc/000ce0403bc9d0ea1a0a67f415b409](https://developers.weixin.qq.com/community/develop/doc/000ce0403bc9d0ea1a0a67f415b409)
删除app重装。这个问题会出现在修改微信开发账号的app Universal Link通过审核后没有删除重装app。(ps狗东西困扰好久,找了n多帖子)
这么多坑,得出的结论是当Universal Link拼接没错(通过了本文的Universal Link链接验证),多删除重装app,或许下一刻就有惊喜