好烟
好烟
  • 发布:2015-10-21 16:57
  • 更新:2015-10-21 16:57
  • 阅读:35699

关于微信支付返回-1错误以及无法打开微信支付界面的问题

分类:HTML5+

翻了下论坛里面,到处都是问-1错误的,这里我把我自己踩过的坑分享一下,希望对大家开发微信支付有些帮助。
我已经测试过的原因如下:
1,微信支付只支持打包之后安装到手机上进行测试,不支持真机调试,所以骚年们,打包之后再试吧
2,请在打包测试之前,一定要确认和官方的回调字符串是不是一模一样,参数键值不能多也不能少,为了确保成功还是相信官方不会忽悠你的!
这段代码是dcloud官方微信支付返回的字符串,大家可以把自己的字符串拿出来比对一下,确认一致,那就打包测试吧

{"retcode":0,  
"retmsg":"ok",  
"appid":"wx041********d61297",  
"noncestr":"29dfdc1**d9c7ef283cad8ecb1448c8",  
"package":"Sign=WXPay",  
"partnerid":"123*****01",  
"prepayid":"52010***0151019c3820473613388ca",  
"timestamp":1445239300,  
"sign":"16a5efa393b50*****4d6d76e1b2ff703d27"}

3,如果以上两点都已经确认没问题了但是还是无法吊起支付,那么就去微信开放平台https://open.weixin.qq.com/确认下你的应用签名和包名与你在平台上配置的签名和应用包名是不是相同吧,如何获取应用签名这个论坛里面有教材,实在不知道的去腾讯应用宝市场发布下应用,那里也有教程如何获取app的签名,微信开放平台签名修改之后需要等一段时间才会生效,所有如果确认是签名或者包名问题,下班之前再改吧,不然一天白瞎了
特别说一下,这里的签名是长度为32位的MD5字符串
4,ios和安卓在获取支付通道的时候有个现象,他们在支付通道数组对象里面的先后顺序不一样,如果你们在测试微信支付的时候报什么620XX错误,那就检查下支付通道对象获取的对不对
5,补充上面第三点,大家的证书在发布之前一定要换成自己的私有证书,用dcloud的公有虽然也没什么问题,但是一旦dcloud切换证书,之前发布的应用都会失效的,特别麻烦,这个只是个建议

11 关注 分享
DCloud_Android_ST 女子烟 I_is_Yao ADT Nelson 5675557 Element Trust 鸿泷 xufeng8510@163.com renjie@ZIJJJ.COM

要回复文章请先登录注册

12668966@qq.com

12668966@qq.com

回复 Mr_zhu :
同问啊,我的也是IOS可以支付,安卓的都支付不了
2018-02-06 17:08
826096331@qq.com

826096331@qq.com

亲测,官网上下载的都是坑,付费的请联系我QQ/微信:826096331
微信请参考下这里:http://http://www.erdangjiade.com/php/2750.html
支付宝请参考下这里:http://www.erdangjiade.com/php/2475.html
2018-01-08 23:44
826096331@qq.com

826096331@qq.com

亲测,官网上下载的都是坑,付费的请联系我QQ/微信:**826096331**
微信请参考下这里:[http://www.erdangjiade.com/php/2750.html](http://http://www.erdangjiade.com/php/2750.html)
支付宝请参考下这里:[http://www.erdangjiade.com/php/2475.html](http://www.erdangjiade.com/php/2475.html)
2018-01-08 23:43
好烟

好烟 (作者)

回复 32666654@qq.com :
你都说了是真机测试,说明拿的也是官方的apk进行测试的,所以我们自己开发测试支付也得用真机!
2017-12-21 12:06
32666654@qq.com

32666654@qq.com

为什么官方demo在真机调试时即可随时调出支付,不返回-1,我们就要拿到apk文件后才能测试?
2017-12-19 10:28
kika

kika

微信支付接口升级了,DCloud官方demo返回的订单参数也升级了
最新参数请访问这个地址查看:
http://demo.dcloud.net.cn/payment/wxpayv3.HBuilder/?total=1

提醒一点:total是订单金额,为整数,单位为分
2017-10-30 18:41
好烟

好烟 (作者)

回复 474385179@qq.com :
那说明你apk的打包证书用的是官方提供的样例证书,使用自己的私有证书打包,并通过微信开发工具获取包前面,更新到开放平台上
2017-08-24 17:44
474385179@qq.com

474385179@qq.com

楼主现在还能看到么,我现在遇到的问题是上面楼主写的参数全部确认过了,开放平台测试签名什么的都通过了,调用官方的v3接口可以启调支付,但是换成自己的接口就报错-100,不知道该怎么解决
2017-08-21 18:42
269319859@qq.com

269319859@qq.com

参数配置没错,ios可以支付,安卓报-1 的错什么情况?
2017-05-11 18:46
youxdd

youxdd

你好,我产生的参数是这样的:
{
"appid": "wx779a**27b1aaeb10",
"partnerid": "143**41502",
"noncestr": "ZeIlmt3FbV8MzfIo",
"package": "Sign=WXPay",
"prepayid": "wx2017041420152166c4aa07b80812189917",
"timestamp": 1492172122,
"sign": "5b89b644d95779dc304928cdfac68a86"
}
和官方的sign不一样,官网的是40位,这是为什么?
我是md5加密的,获取prepay_id 后再次签名的,但是不能使用,请问我该怎么处理?
2017-04-14 20:17