Android开发 接入微信支付 案例

Android接入微信支付
2017-07-03

今天来聊聊,android中接入微信支付的需求,肯定有人会说,这多简单呀,还在这里扯什么,赶快去洗洗睡吧~~

那我就不服了,要是说这简单的,你知道微信支付官网多少吗,要是你一百度,下面全是广告,哈哈,你一不小心就掉坑去了,在简单的事,只要你想把他做好,其实也是很复杂的~

简介

首先我们来到微信支付官网瞅瞅:

Paste_Image.png

可以看到这就是微信支付首页,下面有几种支付方式,而我们今天的主角就是APP支付,我们可以直接点进去,或者从左上角接入指引-APP支付,进去的文档式样的,这是这个文档的位置如下图所示:

<img src="http://upload-images.jianshu.io/upload_images/1152636-4896a840f1db0366.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240" alt="Paste_Image.png" title="" kf="" ware="" vc="" "="" target="_blank" class="keylink" style="border-width: 0px; padding: 0px; margin: 0px auto; list-style: none; display: block; height: 560px; width: 315.963px;">vc3qs8nWp7i2vdPI69Do0qrExNCpsr3W6KOsxMTQqdfKwc+jrNXi0fnE47/J0tTIw8/gudi1xMjL1LHKws/IyKXXvLG41eLQqdfKwc+jrLb4srvKx8zuzerSu7K918rBz6Os1NrIpdXSz8LSu7K918rBz6OsvMfXocqxvOS+zcrHvfDHrqOswe3N4sTjwey1vMu1wLS4+M7SvbK9ss6i0MXWp7i2xMfXvLG4xMTQqdfKwc+jrMTjw7u/tLn91eLOxLW1o6zEx87Svs3Wu8Tcuse6x8HLTyihyV+hySlPfqGjwe3N4sTE0KnLtdanuLa88rWltcSjrNPQvLi49taqtcDV4tXFzbyjrNPW09DLrcjP1ea/tLn9fn48L3A+Cgo8cD6/ydLUv7S1vcrH0qq80zMwML/ptcSjrLu50OjSqsbz0rW1xNK70KnXysHPoaM8L3A+Cgo8cD7B7c3izqLQxdanuLbT0MG9uPbGvcyot9ax8MrHPGEgaHJlZj0="https://open.weixin.qq.com/">开发者平台和商户平台

开发者平台:主要是针对开发者,比如:创建应用,获取appid 
商户平台:主要是商户上面的一些管理,比如:可以查看流水,订单呀

创建应用

这里我只是演示怎么创建应用,最后不会用这个账号的,因为我这是个人账号,没法申请支付,只是给不会创建的朋友做一个演示,需要哪些资料而已,会的可略过~

首先我们来到开发者平台,没有账号的先注册,这个我想不用演示了,直接演示怎么创建应用,首先你的登录完账号,点击管理中心-移动应用:

Paste_Image.png

点击左上角的创建移动应用,到如下界面,因为这里是测试,所有资料都是随便填啦

Paste_Image.png

点击下一步就来到了

Paste_Image.png

这一步让你填写,需要的平台,以及平台信息,我这里只悬着android,填入包名和签名,另外这里他没有想微博那样可以填入多个签名,那么这里我建议你一开始填入debug的签名,等调试通过了在填写正式签名,签名的获取方法和接入第三方登录是一样的。最后提交审核,等审核完以后,我们点击到应用详情,应该是这样的效果

Paste_Image.png

个人账号创建的应用审核通过后只有,分享功能,如果还需要支付,可以点击申请,然后认证账号并上传一些资料,这又是一个漫长的过程,这里我们就不了那么多了,现在直接说怎么在代码实现吧

运行官方demo

记住这里的支付demo是在商户平台的帮助里面下载,地址在这里,而不是开发者平台下载的那个demo(以前是可以,现在这里下载的demo,里面剔除了支付),如下图,是这个页面:

Paste_Image.png

第一个是基础库,点击后会跳到开发者平台,第二个参数支付demo,当然里面也包含了分享等一些功能,可以说如果你既要做支付又要做分享,那么你只需要这个一个demo就行了,当然还得需要我这篇文章呀

下载完导入eclipse,替换debug.keystore然后运行,就可以看到如下界面,终于看到支付了,激动不已是不是

Paste_Image.png

然后我们就可以点击“跳转到支付界面”,看看什么效果呀,是骡子是马总的溜溜吧,看到这一面,感觉神清气爽,因为demo跑通了,呵呵~

Paste_Image.png

demo也看了,钱也付了,那我们现在就该开始接入支付了

正式接入支付

首先还是得上一张流程图呀,不然你知道怎么个逻辑?

这是这个文档的官方地址

\,这是官方的解释

商户系统和微信支付系统主要交互说明:

步骤1:用户在商户APP中选择商品,提交订单,选择微信支付。

步骤2:商户后台收到用户支付单,调用微信支付统一下单接口。参见【统一下单API】。

步骤3:统一下单接口返回正常的prepay_id,再按签名规范重新生成签名后,将数据传输给APP。参与签名的字段名为appId,partnerId,prepayId,nonceStr,timeStamp,package。注意:package的值格式为Sign=WXPay

步骤4:商户APP调起微信支付。api参见本章节【app端开发步骤说明】

步骤5:商户后台接收支付通知。api参见【支付结果通知API】

步骤6:商户后台查询支付结果。,api参见【查询订单API】

首要微信支付暴露给我的是两步,一步是生成预支付订单,然后那个预支付订单id再去调用微信支付,所以说这里就有两种实现方式了,一种是客户端处理这所有步骤,另外一种肯定是服务端创建与支付订单和签名,然后返回给我们,我们才拿着这些参数去调用微信支付。实际应用中,推荐使用服务那种,但是我这里讲的是本地怎么实现支付,如果你们是在服务端支付,那么你的告诉他你需要什么参数,他怎么创建预支付订单等服务端下单参考这里

配置

这是官方的app支付开发步骤,另外这里由于我没有可用的支付所以,写demo我用的包名和key都是微信demo的

配置权限

配置activity

?
1
<code class = "language-xml hljs " ><uses-permission android:name= "android.permission.INTERNET" ></uses-permission></code>

配置回调activity

?
1
<code class = "language-xml hljs " ></activity></code>

调用支付

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值