APP微信支付集成

--------------------------------------------------------------------------------------------------------------
1、获取PrepayId


@Override
protected Map<String,String>  doInBackground(Void... params) {


String url = String.format("https://api.mch.weixin.qq.com/pay/unifiedorder");
String entity = genProductArgs();


Log.e("orion",entity);


byte[] buf = Util.httpPost(url, entity);


String content = new String(buf);
Log.e("orion", content);
Map<String,String> xml=decodeXml(content);


return xml;
}

2、生成支付参数
private void genPayReq() {


req.appId = Constants.APP_ID;
req.partnerId = Constants.MCH_ID;
req.prepayId = resultunifiedorder.get("prepay_id");
req.packageValue = "Sign=WXPay";
req.nonceStr = genNonceStr();
req.timeStamp = String.valueOf(genTimeStamp());




List<NameValuePair> signParams = new LinkedList<NameValuePair>();
signParams.add(new BasicNameValuePair("appid", req.appId));
signParams.add(new BasicNameValuePair("noncestr", req.nonceStr));
signParams.add(new BasicNameValuePair("package", req.packageValue));
signParams.add(new BasicNameValuePair("partnerid", req.partnerId));
signParams.add(new BasicNameValuePair("prepayid", req.prepayId));
signParams.add(new BasicNameValuePair("timestamp", req.timeStamp));


req.sign = genAppSign(signParams);


sb.append("sign\n"+req.sign+"\n\n");


show.setText(sb.toString());


Log.e("orion", signParams.toString());


}

3、发送支付请求
private void sendPayReq() {



msgApi.registerApp(Constants.APP_ID);
msgApi.sendReq(req);
}


4、检查回调结果
在net.sourceforge.simcpux.wxapi包路径中实现WXPayEntryActivity类(包名或类名不一致会造成无法回调)
public void onResp(BaseResp resp) {
if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {
  Log.d(TAG, "onPayFinish, errCode = " + resp.errCode);
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle(R.string.app_tip);
}
}


--------------------------------------------------------------------------------------------------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值