对于需要使用微信支付等功能的APP来说,对接微信提供的openSDK是不可缺少的一环。随着苹果iOS 13系统版本的安全升级,为此openSDK在1.8.6版本进行了适配。1.8.6之后的openSDK需要支持Universal Links(通用链接)跳转,否则会出现“微信登录失败,universal link 校验不通过”的错误信息。
 

  对于通过链接的介绍和接入方式,这里不再赘述,具体步骤可以参考各大论坛下的接入教程。

 
  大致来说,配置通用链接需要客户端和服务端相互协助配合,并且通用链接要求服务器必须支持https,且是受苹果信任的证书。这里我们可以借助openinstall平台免费提供的一键拉起功能来省略服务端配置步骤,简单快速地实现通用链接的接入。
 

  首先根据openinstall接入文档,确保当前的AppID开启了Associated Domains(关联域名)服务:
 
简单配置iOS的通用链接,迅速解决“universal link 校验不通过”问题!_第1张图片
 
  接着更新证书,配置到工程里即可。
 
  Xcode中,配置好openinstall自动分配的关联域名(需要在官网注册且创建应用)。这里的关联域名由openinstall所提供,相较于传统的接入方式,省去自行配置https地址的烦恼。
 

简单配置iOS的通用链接,迅速解决“universal link 校验不通过”问题!_第2张图片
 

  接着按照文档,在AppDelegate中添加对应的回调方法即可。这里无需配置apple-app-site-association文件的步骤。
 

  对于与微信openSDK的兼容性,openinstall也给出相应的解决方法:
 

简单配置iOS的通用链接,迅速解决“universal link 校验不通过”问题!_第3张图片
 

  配置成功后,将落地页地址中点击触发的请求链接复制进备忘录中,长按点击之后便可验证出通用链接配置正确,这里以openinstall官网demo为例:
 

简单配置iOS的通用链接,迅速解决“universal link 校验不通过”问题!_第4张图片
 

  对于无法使用通用链接跳转,或者想在网页中无需点击直接进行跳转的应用来说,openinstall同样给出了使用scheme进行跳转的解决方法,具体实现方法可按照其对应文档集成即可。
 
参考文档:
 
微信SDK接入说明:https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Access_Guide/iOS.html
 
openinstall接入文档:https://www.openinstall.io/doc/ios_sdk.html
 
传统通用链接配置教程:https://blog.csdn.net/Tiramisu_LM/article/details/86582054