微信分享之universal link的踩坑梳理

1、先配置好自己的universal link.配置步骤

1.先记录下自己的app ID和 bundle ID如图

2、配置指定文件(apple-app-site-association),我参考的苹果官方json文档。https://developer.apple.com/documentation/xcode/supporting-associated-domains

另外说几个Universal links失效,可能原因:

1)工程配置associated domain未打开或未添加Universal links域名

2)配置文件未上线或未按苹果要求放在服务器指定的路径下(域名根目录)

3)配置文件的Universal links的path末尾没有加通配符*

4)配置文件的appID(teamID+bundleID)与实际代码包不匹配

5)没有进行跨域配置。就是h5页面和Universal links在一个域名下

Universal Link跨域

Universal Link有跨域问题,Universal Link必须要求跨域,如果不跨域,就不会跳转(iOS 9.2之后的改动)

假如当前网页的域名是A,当前网页发起跳转的域名是B,必须要求B和A是不同域名才会触发Universal Link,如果B和A是相同域名,只会继续在当前WebView里面进行跳转,哪怕你的Universal Link一切正常,根本不会打开App

Universal Link请求apple-app-site-association时机

当我们的App在设备上第一次运行时,如果支持Associated Domains功能,那么iOS会自动去GET定义的Domain下的apple-app-site-association文件

2、配置好unicersal link之后对接微信分享。

一开始我用的是umeng分享模块,调起微信之后迅速返回到自己app了。死活找不到原因。最后用了微信自己的sdk,看来还是不能用中间商赚差价(开玩笑.jpg)。

微信开放管理后台https://open.weixin.qq.com/cgi-bin/appdetail?t=manage/detail&type=app&lang=zh_CN&token=38f16ecdb3d44597bd99fffbca68bd02236eb9ba&appid=wxd0286a9828f92de0

微信分享一定记得遵守代理以及添加两个回调方法!

微信分享一定记得遵守代理以及添加两个回调方法!

微信分享一定记得遵守代理以及添加两个回调方法!

微信有自检函数。自检函数后来卡在了第5步,不过还是能分享到微信。(这个坑,目前怀疑微信有缓存universal link有关系。目前测试了下从来没有分享过的微信,是能正常分享的,可能是和微信有自己的缓存有关系,不嫌弃麻烦的可以删除微信重新安装再次测试。)

微信分享还是不好使,试试单纯分享纯文本试试,纯本文可以再分享图文链接。

还是不行的话微信自检函数有一个解决问题的链接如下

https://developers.weixin.qq.com/community/develop/doc/000ce0403bc9d0ea1a0a67f415b409

2022-08-31

这次还是微信分享的universal link有问题。

跨域没有设置,自检函数卡到5,0。最后设置了Xcode的universal link 把https://给删除掉,universal link就生效了,微信自检函数走通。备忘录也可以跳转  到App。

还是莫名其妙。因为well_konwn配置文件可能会有48小时延迟更新,所以再等两天观测下。

你可能感兴趣的:(微信分享之universal link的踩坑梳理)