android 微信支付过程,Android微信支付集成步骤

原标题:Android微信支付集成步骤

准备工作

在应用集成微信支付之前,我们在微信开放平台必须要个开发者账户

1.注册完之后创建一个移动应用,并获取APPid等可以参考:

http://blog.csdn.net/vroymond/article/details/53422744

2.申请开通微信支付能力

认证开发者资格

b5440140000fbe60b284a87c5cd86d57.png

开通微信支付

8333cf003c291a67903686746295dc29.png

3.开通成功后,获取得到商户号并在商户平台配置API密钥(生成预支付订单号需要)

API密钥配置流程:http://help.ecmoban.com/article-2085.html

4.在项目中导入微信提供的jar包

3e40741c57fddc7a6beadf63f04791f9.png

5.在项目包名下创建一个wxapi的包,并创建一个WXPayEntryActivity的类(微信分享以及登录必须要求,该类继承activity并实现IWXAPIEventHandler接口,用于拿到支付的回调结果),并在清单文件中注册。

5134c63e8e64236b545bc7ce5b9b9a11.png

调起微信支付

步骤:

1.客户端(APP)提交订单信息给服务端,服务端根据微信接口:统一下单接口,生成预支付Id(prepay_id)返回给客户端。

f0071d55ebc680dfd86a25105aff3b3a.png

2.客户端(APP)根据预支付Id(prepay_id)调起微信支付

991e5098353b9940a0b3d0194f0913df.png

如何生成预支付Id(一般在服务端生成)?

根据统一下单接口文档的规则:

服务端需要必须提交的参数字段有以下这些:(POST格式为XML)

应用ID appid 微信开放平台审核通过的应用APPID

商户号 mch_id 微信支付分配的商户号

随机字符串nonce_str 随机数生成算法

商品描述body

商户订单号out_trade_no

总金额total_fee

终端IP spbill_create_ip

通知地址 notify_url

交易类型trade_type

签名sign 签名生成算法(重要)

详情可看:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_1

sign签名生成:

1.把我们所需要提交的参数(除sign外),拼接成URL键值对的格式(即key1=value1&key2=value2…)

2e2c8f2d9ad5e003db722d9dc7121a2e.png

1528f1630db27bcefeb4aac7f0db7eea.png

2.得到拼接后的字符串之后拼接在商户平台生成 API密钥

46e247c974b925c1ae79064f883e1865.png

4c4a8ba51cec590a9ceb4755c25c75b2.png

3.拼接完key之后,进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign

fc7046e339368aac4730e25979924dce.png

提交所有参数 调起统一下单接口 获取预支付Id

APP客户端调起微信支付

根据微信提供的调起微信支付的规则,APP端需要提交的参数为:

884219a523ee2a3e5927f76dfffae4ab.png

1.sign签名生成

sign签名生成步骤跟上面叙述的是一样的(省略)。

2.生成完签名,拼接所有支付参数。(PayReq,IWXAPI是微信提供jar包里的类)

6b59bd28bc3d6be4456b588551e3b492.png

3.调起微信支付

0337d5393cbb2a7510cc1c9c1ff53331.png

(注意,运行的应用签名必须跟在微信开放平台的签名需要一致,为了方便调试可以让debug使用relase签名,配置步骤可参考:http://www.cnblogs.com/niray/p/5242985.html)

至此,调起微信支付所有步骤完成

源码地址:https://github.com/CTSN/testWxPay(此代码只能做参考,已把应用签名以及APPid等删除掉)

效果图:

ad841b1ebc732bbe77cc88fe86e3b3f0.png

26c2d91338a50494bd2878a4c3cca0ce.png

更多资讯更多伙伴,尽在bbs.520it.com返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值