【安卓】微信支付报错 “包名不对,请检查包名是否与开放平台填写的一致。”
IWXAPI iwxapi = WXAPIFactory.createWXAPI(activity, ManifestUtils.getMetaWXAppId());
if(!iwxapi.isWXAppInstalled()){
//未安装的处理
ToastUtils.showLong("未安装微信");
return;
}
iwxapi.registerApp(ManifestUtils.getMetaWXAppId());
PayReq req = new PayReq();
req.appId = item.getAppId();
req.nonceStr = item.getNonceStr();
req.packageValue = "Sign=WXPay";
req.partnerId = item.getPartnerId();
req.prepayId = item.getPrepayId();
req.timeStamp = item.getTimeStamp();
req.sign = item.getSign();
// 在支付之前,如果应用没有注册到微信,应该先调用IWXMsg.registerApp将应用注册到微信
iwxapi.sendReq(req);
这是调用支付接口的实现,传参里面appId和registerApp的包名参数跟开放平台注册的一致,
在触发微信支付的时候调起微信支付页面,不进行支付而是直接退出后,后续再调起微信支付就会有报错提示。