[Android]微信分享、微信支付调起失败的解决之道

先说下我遇到的现象吧:

微信分享,点击没反应,也没有报错信息.
微信支付,点击同样没反应,resp.errCode == -1,errorStr = " "

抓耳挠腮,百撕不得姐.

只能对着文档一行一行的扣.

点击查看微信支付的文档

下图是文档中对errorCode的介绍:


[Android]微信分享、微信支付调起失败的解决之道_第1张图片
errorCode.png

先确认APPID没有问题,这时候自然就怀疑是不是签名的问题.当然,微信也提供了工具来帮我们验证,请看这里
经过验证,很不幸,签名没有问题.那就只剩最后一个原因了——‘其他异常’.

OK.不卖关子了,问题是怎么解决的呢?下面是复盘:
1.查看在微信开放平台的配置.


[Android]微信分享、微信支付调起失败的解决之道_第2张图片
配置.png

这里的应用签名,要用自己项目release的签名.因为经过测试,最开始我是用的debug包(debug包没有做签名),后来跟同事对比发现,两个debug包拿到的签名竟然不一致.换成release包之后,两次签名一致.

注意:这里的重点不是debug和release,而是你打包的时候有没有用到项目中的keystore

下面这段是文档中的原文:

应用包名:是在APP项目配置文件AndroidManifest.xml中声明的package值,例如DEMO中的package="net.sourceforge.simcpux"。
应用签名:根据项目的应用包名和编译使用的keystore,可由签名工具生成一个32位的md5串,在调试的手机上安装签名工具后,运行可生成应用签名串,如图8.9所示,绿色串即应用签名。签名工具下载地址https://open.weixin.qq.com/zh_CN/htmledition/res/dev/download/sdk/Gen_Signature_Android.apk

2.配置完之后,当然还是不行,这时候一定不要摔手机,因为这解决不了问题.
微信会对之前的调用生成缓存,所以你可以卸载重装or清空微信数据.

3.搞定.

严正声明:
由于每个项目的原因不一样,还是要具体问题具体分析.如果看了本文还是没有解决你的问题.可以摔手机,但是不能骂人.

你可能感兴趣的:([Android]微信分享、微信支付调起失败的解决之道)