1:申请微信开放平台账号开通支付能力
2:动态注册下
IWXAPI api = WXAPIFactory.createWXAPI(this, APP_ID);
api.registerApp(APP_ID);
3:以下是访问网络从后台获取json通过后面的参数拼接后当成订单去请求微信api支付
if (msg.equals("succ")){ JSONObject jsonObject3= jsonObject.getJSONObject("data");
PayReq req = new PayReq();
//req.appId = "wxf8b4f85f3a794e77"; // 测试用appId
req.appId= jsonObject3.getString("appid");
req.partnerId = jsonObject3.getString("partnerid");
req.prepayId = jsonObject3.getString("prepayid");
req.packageValue = "Sign=WXPay";
req.nonceStr = jsonObject3.getString("noncestr");
Long tsLong = System.currentTimeMillis() / 1000;
String ts = tsLong.toString();
req.timeStamp = jsonObject3.getString("timestamp");
req.sign = jsonObject3.getString("sign");
StringBuffer sb = new StringBuffer();
sb.append("appid=" + req.appId);
sb.append("&noncestr=" + req.nonceStr);
sb.append("&package=" + req.packageValue);
sb.append("&partnerid=" + req.partnerId);
sb.append("&prepayid=" + req.prepayId);
sb.append("×tamp=" + req.timeStamp);
sb.append("&key=" + "e7b85f411c583bfd51afd991a7b2fb40");
req.extData= "app data"; // optional
Toast.makeText(WeChatPayWayActivity.this, "正常调起支付", Toast.LENGTH_SHORT).show();
// 在支付之前,如果应用没有注册到微信,应该先调用IWXMsg.registerApp将应用注册到微信
api.sendReq(req);
4:ok了(注意打包测试)
福利:
http://shapes.softartstudio.com/自动生成圆角矩形工具