微信支付签约用户,微信支付时
class WXPayEntryActivity : AppCompatActivity(), IWXAPIEventHandler {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val api = WeChatUtil(this).createWXAPI()
try {
api.handleIntent(intent, this)
} catch (e: Exception) {
}
}
override fun onResp(baseResp: BaseResp?) {
LogUtil.e("pay errCode = " + baseResp?.errCode)
LogUtil.e("pay errStr = " + baseResp?.errStr)when (baseResp?.errCode) {
// TODO 此处始终返回 errCode = -1 检查过APPID, PID 等 没有问题。
BaseResp.ErrCode.ERR_OK -> {
if (baseResp.type == ConstantsAPI.COMMAND_PAY_BY_WX) {
setPayResult(true)
}
}
else -> setPayResult(false)
}
}
调用微信支付时,一直报错![](https://mmbiz.qlogo.cn/mmbiz_png/Cn4ficQk9ibAqOS4n4qKfT5eb5gGanvVqfqhRlQCa5bkAdFniav0XVpauXIWSvHziabNKYNtKH6Gsf9rHupUjkXEMg/0?wx_fmt=png)
1、检查游戏包名,微信参数均无问题。
2、其他用户调用微信支付正常。只有自己这个手机,一调用支付,就报错-1。无法正常支付。
3、换个微信账号登录微信。再次到游戏中调用支付,正常。或在手机设置中,清除微信应用的缓存。(微信,会缓存应用首次调用支付时的签名信息,若第一调用支付的签名与后台不匹配,则会一直无法调出支付,报错errCode:-1)
相关链接:https://segmentfault.com/q/1010000005136636
您好,请参考:
按照以下几点来检查,
1)你签名中的key,也就是你的API密钥key,这个参数要你们自己到商户平台设置的,设置的规则是32位数字与字母大小写的组合的随机数,不能设置成签名串和参数appsecret,你们有正确设置吗???
2)检查开放平台对应的包名与签名是否有正确设置。
https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5 这里有详细的设置说明。
3)调用支付使用的noncestr这个参数必须和商家服务器调用统一下单接口返回的那个noncestr一致
4)从预支付订单返回的数据 ,没有重新签名,也会引起这个问题。
5)重新安装微信后试试。