安卓移动端微信支付集成,遇到很多坑,走了很多弯路

发布时间:2025-05-08 05:42

移动互联网推动了移动支付的普及,如支付宝和微信支付 #生活知识# #生活感悟# #科技生活变迁# #移动互联网#

前前后后做微信支付两天,又好久没有写技术博客了,另一个号的账号密码忘了,重新写了

1:我的demo界面很简单,只写了一个button   调起支付的用的

   下面官方demo项目的框架

2:导入微信sdk 添加依赖  这个就不用说了吧

3:首先将工具类copy到自己的项目中Constants.java,然后将wxapi这个文件夹拷打您的包下面的第一级路径,里面打开很简单,一个appid,还有个一些静态常量,后面用的到暂且不用理解

4:将app注册到微信中

5:检查微信版本是否支持支付功能

//检查版本是否支持 private boolean IsSupport() { boolean isPaySupported = msgApi.getWXAppSupportAPI() >= Build.PAY_SUPPORTED_SDK_INT; return isPaySupported; }

6:在button的点击事件中首先判断版本支持,然后:

String url = "http://wxpay.weixin.qq.com/pub_v2/app/app_pay.php?plat=android"; Toast.makeText(MainActivity.this, "获取订单中...", Toast.LENGTH_SHORT).show(); try{ byte[] buf = Util.httpGet(url); if (buf != null && buf.length > 0) { String content = new String(buf); Log.e("get server pay params:", content); JSONObject json = new JSONObject(content); if(null != json && !json.has("retcode") ){ PayReq req = new PayReq(); //req.appId = "wxf8b4f85f3a794e77"; // 测试用appId 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 Toast.makeText(MainActivity.this, "正常调起支付", Toast.LENGTH_SHORT).show(); // 在支付之前,如果应用没有注册到微信,应该先调用IWXMsg.registerApp将应用注册到微信 msgApi.sendReq(req); }else{ Log.d("PAY_GET", "返回错误"+json.getString("retmsg")); Toast.makeText(MainActivity.this, "返回错误"+json.getString("retmsg"), Toast.LENGTH_SHORT).show(); } }else{ Log.d("PAY_GET", "服务器请求错误"); Toast.makeText(MainActivity.this, "服务器请求错误", Toast.LENGTH_SHORT).show(); } }catch(Exception e){ Log.e("PAY_GET", "异常:"+e.getMessage()); Toast.makeText(MainActivity.this, "异常:"+e.getMessage(), Toast.LENGTH_SHORT).show(); }

注意点:wxapi目录的路径,清单文件与demo对比,还有返回结果为-1,最好到手机设置里面,将微信数据清除,然后重新登录就可以啦(测试id是这样的,正式开发则不需要) 欢迎提问

网址:安卓移动端微信支付集成,遇到很多坑,走了很多弯路 https://www.yuejiaxmz.com/news/view/940772

相关内容

支付宝支付集成总结
移动支付革命推动者:微信支付的卓越贡献
移动支付是什么意思 可以使用微信支付吗
18个超实用的生活小妙招,一点就通,很多人都走弯路了
微信支付API合辑:打造便捷高效的移动支付体验
移动支付概念股走强
Android平台微信与支付宝支付集成教程
移动支付集成方案详述
移动支付集成指南
移动支付:信息时代中国的“弯道超车”(中国生活新名片②)

随便看看