msgApi = WXAPIFactory.createWXAPI(RechargeActivity.this, APP_ID,false); msgApi.registerApp(APP_ID); PayReq request = new PayReq(); request.appId = json.getString("appid"); request.partnerId = json.getString("partnerid"); request.prepayId = json.getString("prepayid"); request.packageValue=json.getString("package"); request.nonceStr = json.getString("noncestr"); request.timeStamp = json.getString("timestamp"); request.sign = json.getString("paySign"); msgApi.sendReq(request);
appid:平台生成的
partnerId,nonceStr,timeStamp:后台给的
prepayId,sign:后台签名给返回的
packageValue:现在都写成固定值,而且也是微信官方推荐的"Sing=WXPay"
一般情况下req配置这几个就可以完成支付了,这个参数的值都是后台给返回的,可以让后台返回一个字符串自己解析进行赋值
@Override public void onResp(BaseResp resp) { switch (resp.errCode){ case 0: //成功 break; case -1: //失败 break; case -2: //用户取消 break; }重写onResp方法,在里面坐一些支付结果的处理