微信支付的主要操作流程,如下:
首先要在 AndroidManifest.xml 文件里面添加如下权限。
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
如果我们开发的app想要集成微信的支付功能。那么首先要成为一个微信开放平台的开发者。1.用户浏览我们的app客户端,在客户端选定商品然后下单。
2.我们的服务器处理订单逻辑,开始正式发起支付流程
3.首先,我们的后台服务器向weixin服务器发起请求,获取一个token key。
4.我们的后台服务器拿到微信服务器返回的token key以及其他参数通过加密,再次向weixin服务器发起请求,获取一个预支付prepayid
5.我们的后台服务器将该prepayid返回给我们的app客户端
6.我们的app客户端调用手机上的微信控件,完成付款流程。
7.我们的app向我们的后台服务器发起一个回调请求,通知服务器交易完成。
8.weixin服务器处理完所有的流程后,向我们的后台服务器发起一个post请求,正式通知后台服务器交易完毕
值得我们注意的一个地方是,我们是应该使用客户端的数据进行支付还是使用服务器端的数据进行支付呢。我这里把这两种不同的方法都写在了demo中,提供大家参考一下。demo的下载地址是: 点击此处下载
1、微信开放平台地址:https://open.weixin.qq.com/
在为新开放平台注册,成为一个微信开放平台的开发者以后。在管理中心,创建自己的移动应用。创建好以后等待微信开放平台的审核。
审核一般会在24小时内有结果。
2、创建移动应用以后,我们的移动应用的状态是待审核。等通过审核以后。就是这样的。如下图:
点击查看。可以查看我们创建的移动应用可以调用微信的哪些接口。如下图:
如图上的AppID和AppSecret是很重要的两个数据。要保存好。我们创建的移动应用通过审核以后会获得默认的两个接口权限。图上所示。
接下来说支付功能。想集成支付功能。就需要去申请开通。