Universal Link 无效
Universal Link 技术已经出现了好几年了,网上关于如何配置Universal Link 的文章也铺天盖地,如果想看配置的细节,可以看这篇文章, 本文主要介绍配置Universal Link 中无效的几种情况。
一、 校验apple-app-site-association是否生效
如果你在网上搜文章会发现,校验apple-app-site-association
是否生效,很多文章给出的是 https://search.developer.apple.com/appsearch-validation-tool/)这个链接,但是现在这个链接已经失效了。现在可以使用https://branch.io/resources/aasa-validator/这个链接来验证是否有效。当然,也可以使用下面的命令:
1 | // domain-name-here.com : 存放apple-app-site-association的域名 |
结果如下:
二、apple-app-site-association无效原因
原因一:本地未更新到
服务器上apple-app-site-association的更新不会让iOS本地的apple-app-site-association同步更新,即iOS只会在App第一次启动时请求一次,以后除非App更新或重新安装,否则不会在每次打开时请求apple-app-site-association。
解决方案:
重新安装APP,如果不起作用,可以删掉APP后重启手机再重新安装。
原因二:缓存原因
现在APP首次启动加载
apple-app-site-association
文件的时候,是从苹果的DNS服务器加载的,如果修改了apple-app-site-association
内容,不会立即生效,快的话可能需要一两个小时,慢的话最晚需要24个小时,我在这里踩过坑。
解决方案:
等待…
原因三:针对iOS14及以上设备可能会出现 开发模式下无法唤起APP, 这时,需要增加 mode
1 | <key>com.apple.developer.associated-domains</key> |
根据这篇文章: mode = developer
适用于使用 dev 的Profile打包的APP中,去掉的话, 用于Production 打包的。