收藏
回答

安卓app 调起微信支付时总是 sendReq failed for wechat app sign

安卓app调试微信拉起支付时总是报错

IWXAPI api = WXAPIFactory.createWXAPI(this, appId);
PayReq req = new PayReq();
req.appId            = appId;
req.partnerId        = MCH_ID;
req.prepayId         = d.getPrepayId();
req.packageValue     = "Sign=WXPay";
req.nonceStr         = d.getNoncestr();
req.timeStamp        = d.getTimestamp();
req.sign             = d.getSign();
boolean b = api.sendReq(req);
if (b) {
    XToastUtils.toast("已发送请求");
} else {
    XToastUtils.toast("发送失败");
}

报错:
W/MicroMsg.SDK.WXMsgImplComm: validateAppSignatureForPackage ex com.tencent.mm
E/MicroMsg.SDK.WXApiImplV10: sendReq failed for wechat app signature check failed

是什么原因
appId是公众号的appid还是移动应用的appid


回答关注问题邀请回答
收藏

2 个回答

  • 支付社区运营
    支付社区运营
    2024-12-19

    1、检查应用签名是否和在开放平台登记的包签名一致

    2、如果包签名检查正确无误,那么查看系统android版本,android 11 及以上版本的手机需进行兼容,详情请参考Android 11-更新openSDK适配说明部分https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Access_Guide/Android.html


    2024-12-19
    有用
    回复
  • Memory
    Memory
    2024-12-18

    APPID是移动应用的APPID,你用的V2还是V3?一般就是参数大小写或者参数类型的问题

    2024-12-18
    有用
    回复 8
    • 孙松
      孙松
      2024-12-18
      算sign的私钥是商户的application_key.pem还是在移动应用API安全里设置的秘钥
      2024-12-18
      回复
    • Memory
      Memory
      2024-12-18回复孙松
      看你用的是V2还是V3
      2024-12-18
      回复
    • 孙松
      孙松
      2024-12-18回复Memory
      api 'com.tencent.mm.opensdk:wechat-sdk-android:+'  这应该是最小的V3吧
      2024-12-18
      回复
    • Memory
      Memory
      2024-12-18回复孙松
      不是,取决于你下单的接口
      2024-12-18
      回复
    • 孙松
      孙松
      2024-12-19回复Memory
      服务端是V3
      2024-12-19
      回复
    查看更多(3)
登录 后发表内容