前情提要:
我是java开发。公司的移动开发跳槽了,老板甩给我了。 一直没有问题, 突然有一天,iosAPP发生了这样的事情,跳转到微信小程序微信弹框:由于应用universal link 校验不通过
查阅了一些资料,这个universal link 是微信sdk升级之后的产物,之前使用的都是不需要传universal link的跳转方式,只需要appid就可以了。由于苹果iOS 13系统版本安全升级,为此openSDK在1.8.6及以上版本进行了适配。 1.8.6及以上版本支持Universal Links方式跳转,对openSDK分享进行合法性校验。
解决:
登录开放平台,更改universal link (注意,要记下来 https://aaa.com/xxx/xxx/xx/)
在你的服务器,aaa.com的根目录下,增加名字为apple-app-site-association的文件,文件内容为jason格式。 appid 是:公司开发者账号的小组id和包名id paths:这里的f 填 开放平台的 /xxx/xxx/xx/* (注意写※号)
然后就是升级SDK到最新版了 下载链接:https://developers.weixin.qq.com/doc/oplatform/Downloads/iOS_Resource.html 我下的 1.9.2 不包含支付的,完事吧三个.h文件放在xcode项目中。 需要更改的是wx.api注册的地方,改为传两个参数的。
XCODE还需要更改几个地方。按ios接入指南整:https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Access_Guide/iOS.html
这时候xcode编译完毕,插上测试的iphone手机。 这时候就会出现,跳转过去微信正在连接,然后不去小程序又回到app。
控制台显示: This app is not allowed to query for scheme weixinulapi (要添加白名单,完成后手机关机卸载app,重启即可)
控制台显示: PBItemCollectionServicer connection disconnected.
( 要增加回调,在AppDelegate里面增加:
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool {
return WXApi.handleOpenUniversalLink(userActivity, delegate: self)
}
)
解决。
|