iOS 微信SDK1.8.6后需要UniversalLink解决方案及采坑记录

项目最初因审核原因,一直使用iOS原生分享, 最近因项目需求要求, 接入微信分享, 以为和原来的没有区别, 但是接入时才发现改动的地方还是挺多的, 主要是需要配置UniversalLink和提包时的一些问题, 在此做一下记录

UniversalLink配置步骤

1.制作apple-app-site-association文件,并放置在准备好的链接根目录下,让后台人员给你这个https的链接,一定要https的(该步骤主要时后台人员操作)。apple-app-site-association的内容如下:
{
"applinks": {
        "apps": [],
        "details": [
            {
                "appID": "Team ID.com.xxx.xxxx",
                "paths": ["*"]
            }
        ]
    }
}

其实就是一个json,apps数组不用管,details里面填入对应得appID和paths。appID就是用前缀+bundleID的方式,在App Store应用后台可以查看此前缀。paths则是可访问APP的对应页面路径,APP Delegate有对应方法可以获取, 可添加多个paths。苹果提供了一个地址来 验证 我们编写的这个apple-app-site-association是否合法有效, 通过如下图所示:

iOS 微信SDK1.8.6后需要UniversalLink解决方案及采坑记录_第1张图片

2.在developer里, Identifiers应用管理开启Associated Domains

iOS 微信SDK1.8.6后需要UniversalLink解决方案及采坑记录_第2张图片

3.在微信开放平台配置universalLink, 注意这里必须以https开头, 以/结尾

iOS 微信SDK1.8.6后需要UniversalLink解决方案及采坑记录_第3张图片

4.在项目中添加配置
添加Associated Domains
 

iOS 微信SDK1.8.6后需要UniversalLink解决方案及采坑记录_第4张图片

填写Domains, 格式为applinks:UniversalLink的形式, 如applinks:demo.xxx.com,  注意这里必须为裸的域名,不要加https或者文件名
 

iOS 微信SDK1.8.6后需要UniversalLink解决方案及采坑记录_第5张图片

在info.plist中添加白名单
 

在appdelegate中添加对应的回调

iOS 微信SDK1.8.6后需要UniversalLink解决方案及采坑记录_第6张图片

 

5.接下来的步骤就和微信SDK升级前的一样做对接就可以了

 

采坑记录:

1.校验apple-app-site-association时要耐心等待, 时间有可能会久一点, 多次Test会报错, 因为点击之后是没有loading的, 会让人误以为无响应

2.微信开放平台配置的universalLink必须以https开头, 以/结尾, 否则无法跳转

3.Domains对应的值格式为applinks+UniversalLink的形式,  这里必须为裸的域名,不要加https或者文件名,否则在提包时会报错

iOS 微信SDK1.8.6后需要UniversalLink解决方案及采坑记录_第7张图片

 

 

 

 

你可能感兴趣的:(iOS)