微信分享总是提示未验证的应用,今天有空,微信社区查了资料说是要升级1.8.6以上,
查看当前版本为1.7.7 很明显不满足条件
1.升级微信最新的SDK,开始升级吧。
升级之前有两个重要的情况要说明一下,我们的微信分享之前用友盟集成这里要特别注意,还特意去查了一下友盟的这个问题
https://developer.umeng.com/docs/66632/detail/71857
大致意思是说,友盟集成微信有两种情况,因为友盟本身库文件是不带支付的。如果你要集成支付,分两种情况:
情况一:你下载微信下载的是精简版的,可以直接把微信的库导入进来即可
情况二:你下载是微信全功能版本的,要把友盟的微信库删除,然后把微信的库导入进来
因为项目不是我本人最开始集成的,也是接手别人的。这样我们就需要分析一下自己的微信集成是属于情况几?所以我要下面是我们项目的微信相关截图:
看图分析:我们项目的友盟提供的微信库是存在的,没有被删除。所以微信的集成,应该属于情况一。 那我们只需要替换微信官网下载的库了。
为了方便后来人,我决定不用手动集成的方式,改动Pod 集成微信微信官网下载的包。来到微信开放平台,资源下载查看了最新版本为1.8.7.1,含有支付的精简包已经找到了,这里我没搞懂友盟说的全功能微信包是哪个,有懂的可以留言说一声。
Pod 开始集成,在podfile 中写入如下代码,然后在终端里,pod install
pod "WechatOpenSDK", "~> 1.8.7.1"
pod install
升级很顺利,如下图
2.删除原来的微信SDK文件
把原来友盟文件夹下,从微信官方平台下载wlibWeChatSDK.a和其他OC文件都删除掉,如下图红色框所示:
3.替换报错的方法
方法1:如图:
替换为
[WXApi sendReq:req completion:nil];
方法2:如图:
替换为:
[WXApi registerApp:WXAPPID universalLink:WX_LINKURL];
WX_LINKURL 是苹果的通用链接,如果有不明白的可以看另一篇文章:https://www.jianshu.com/p/8275c7d8ca63
4.配置通用链接
可以参考我的这个文章:https://www.jianshu.com/p/8275c7d8ca63
运行以后报错
遇到问题
问题1:
0, 0, appId or universalLink is nil, Please pass the correct parameters when calling the +[WXApi register:universalLink:] function
解决方案:
问题2:
5, 0, Universal Link check failed. The application is launched by WeChat via scheme, Common problems self-check guide: [微信开放平台App iOS端接入新版本SDK 常见问题自查指引]https://developers.weixin.qq.com/community/develop/doc/000ce0403bc9d0ea1a0a67f415b409