背景:
公司业务需要,想要将一个app包装出一个马甲包,在测试微信分享功能的时候总是出现👇的结果:
由于不支持的分享类型,无法分享到微信
返回(未审核应用)
在微信分享回调的页面打断点,发现errorCode是-6,errStr=null。
查阅微信的开发文档,没有发现有关errorCode=-6的描述。
解决过程:
以下是解决问题的思路,着急看结论的同学可以直接跳过下面这部分:
在接入任何第三方的服务时,如果功能出现问题,第一反应当然是检查接入参数是否正确。不过这个检查工作在第一步就碰到了问题:拿不到开发者账户,无法查看本地配置的appId是否和微信开放平台的一致。
另外一个原因是很久没有从0开始接入微信分享了,项目中使用的分享sdk也是别人打包好的Lib,所以精力放在了熟悉分享sdk源码上,以期获得有效信息。
然而看源码还是碰到了问题,具体来讲就是无法打断点,原因不解释了。
在我原来的认知里,微信分享/支付等功能,如果配置的wxappid错误的话,是无法拉起微信客户端的。(注意这个认知是错误的)
所以就没有认真检查项目中wxappid的值是否正确
黔驴技穷后,开始使用每个程序员解决问题的终极招式:从面向对象编程转移到面向百度/google编程。
搜索出来的有效信息也非常少:
印象中只看到了让清楚微信缓存一下再试试这种操作
我试了,没有用!!!
后来团队的小伙伴突然发现我们项目中的wxappid的值很长很长(对wxappid进行base64后的值),突然意识到(更加确认)是wxappid设置出了问题。
解决方案:
最后还是发现wxappid设置错误导致了分享失败!!!
各位同学请注意:wxappid的开头一般是wx
这两个字母开头,并且长度在18位左右。由于没有看到微信appid的生成规则,所以无法确定具体格式。