Android使用微信支付SDK的集成和支付结果的回调问题。

req.appId = json.getString("appid");

req.partnerId = json.getString("partnerid");

req.prepayId = json.getString("prepayid");

req.nonceStr = json.getString("noncestr");

req.timeStamp = json.getString("timestamp");

req.packageValue = json.getString("package");

req.sign = json.getString("sign");

req.extData = "app data"; // optional

有个要求:在支付之前,如果应用没有注册到微信,应该先调用IWXMsg.registerApp将应用注册到微信

注册方法很简单:

商户APP工程中引入微信JAR包,调用API前,需要先向微信注册您的APPID,代码如下:

final IWXAPI msgApi = WXAPIFactory.createWXAPI(context, “wxd930ea5d5a258f4f”);

// 将该app注册到微信

msgApi.registerApp("wxd930ea5d5a258f4f");

这里我写到了自己的Application里面。

然后发起支付:msgApi.sendReq(req);

关于支付结果回调微信要求要有一包名为wxapi,然后里面有一个WXPayEntryActivity界面,因为从微信支付页面返回APP,它会主动跳转这个界面并返回结果(很扯淡)。微信文档中也有一个提示:支付完成后,微信APP会返回到商户APP并回调onResp函数,开发者需要在该函数中接收通知,判断返回错误码,如果支付成功则去后台查询支付结果再展示用户实际支付结果。注意一定不能以客户端返回作为用户支付的结果,应以服务器端的接收的支付通知或查询API返回的结果为准。


很扯淡的是,必须有一包名为wxapi,否则回调就没有反应。


原文链接:https://blog.csdn.net/weixin_36888674/article/details/80863727

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 实现支付宝支付的准备工作: 1.向支付宝签约,成为支付宝的商户 签约完成后,支付宝会提供一些必要的数据给我们 商户...
    Anson杨春安阅读 12,607评论 0 6
  • 这几天自己集成了微信支付,写个总结留着以后看。。。 前后台同步开发,我们是后台生成订单,(在这之前自己尝试前台生成...
    未聞椛洺阅读 2,967评论 0 1
  • 在被支付宝、银联坑过之后,发现其实微信支付的集成并没有想象中的那么困难,像支付宝那样简单地调用个方法就行,重要的难...
    petry阅读 3,954评论 2 2
  • 今天又做了微信支付,对于客户端来说,微信支付和支付宝支付相比较还是没有多大差别的,只不过微信支付上传的参数多了些。...
    小緈福阅读 3,114评论 0 2
  • 由于公司运营需要,Android客户端要增加微信支付。在看了几遍官方文档之后,加上之前有集成微信分享的经验,所以很...
    Kerry202阅读 5,275评论 2 8