Android 支付宝接入流程
简介:
随着移动支付的普及,越来越多的App采用第三发支付,在这里我们以支付宝为例,做一个快速集成!
1、首先,我们需要前往支付宝开放平台,申请我们的支付功能:https://open.alipay.com/platform/home.htm
![](https://img.haomeiwen.com/i1642207/56cdd5af6adf1414.png)
支付宝首页
这里 有两个需要注意的地方 一个是管理中心,另外一个是我的支付宝
管理中心:
![](https://img.haomeiwen.com/i1642207/f489a066311d20d4.png)
管理中心
管理中心 我们需要 创建一个应用 提交给支付宝进行审核。
我的支付宝:
![](https://img.haomeiwen.com/i1642207/80a4576667b639b9.png)
在这里我的支付宝 是一个商户版,一会我们会需要在这里处理一下相关的 密匙
简单介绍完了,那么我们开始进入代码接入流程
一、我们需要到支付宝的sdk地址下载相关的sdk,这个不用我介绍吧
https://doc.open.alipay.com/doc2/detail.htm?spm=a219a.7629140.0.0.P0wrvI&treeId=54&articleId=104509&docType=1
![](https://img.haomeiwen.com/i1642207/cd50deb5c639d4ff.png)
SDK下载后 长这样哦:
![](https://img.haomeiwen.com/i1642207/8daf7fd6cf6b7940.png)
这里我们需要关注的是:客户端和OpenSSL 解压客户端里面的 Android压缩包 打开看看-_-# eclipse...
不过不影响我们把它变成 studio工程
![](https://img.haomeiwen.com/i1642207/c66a90b6bae96f3a.png)
导入到 studio以后 会发现,真的没什么东西,好简单。
![](https://img.haomeiwen.com/i1642207/97f84f61d8cb5d7b.png)
下面我们看看内部代码中比较重要的地方:
![](https://img.haomeiwen.com/i1642207/061702ce6085f5ca.png)
商户ID、收款账号、pkcs8的私钥、公钥:这里 公钥可不填
那么商户是什么?
![](https://img.haomeiwen.com/i1642207/959c6d82cea458bd.png)
![](https://img.haomeiwen.com/i1642207/f03cc498ffb03b14.png)
PID在这里
![](https://img.haomeiwen.com/i1642207/7f9707a3f9333cbc.png)
收款账号:收款账号就是该支付宝账号,比如 xxxx@qq.com 等等
这里最重要的就是公钥 和 私钥 的配置了 ,公钥 就是支付宝 所需要的密钥,私钥是我们客户端所需要的密钥。首先我们来看看 公钥如何生成。
当前页面 填写好支付宝密码 和 手机验证码我们会进入以下界面:
![](https://img.haomeiwen.com/i1642207/2b4dc1e394a5a563.png)
注意看 里面的 RSA 加密 ,我已经添加过 所以是查看 如果没添加过 那么这里显示的是添加
![](https://img.haomeiwen.com/i1642207/0e42d038609a29c2.png)
好了 我们这个公钥 从那里来呢?回到我们下载的SDK 目录中 打开 OpenSSL 你会看到一个 生成命令的 TXT文档:
![](https://img.haomeiwen.com/i1642207/1a7179deaa503422.png)
RSA密钥生成命令
生成RSA私钥
openssl>genrsa -out rsa_private_key.pem 1024
生成RSA公钥
openssl>rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
将RSA私钥转换成PKCS8格式
openssl>pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt
注意:“>”符号后面的才是需要输入的命令。
如果在mac下 那么 可以直接使用 openssl 如果是win 下 那么 需要 openssl路径下找到bin文件夹进入以后双击 openssl.exe 就ok了
首先进入 openssl目录
![](https://img.haomeiwen.com/i1642207/cfd2dfe25cd49599.png)
![](https://img.haomeiwen.com/i1642207/bbbe79fe56e1fb33.png)
生成后 我们可以通过 txt等工具 打开我们的 公钥
![](https://img.haomeiwen.com/i1642207/37cd4056f9898064.png)
在这里 我们填写到支付宝的公钥 是 排除 -----BEGIN PUBLIC KEY-----和 -----END PUBLIC KEY-----以及制表符的 我们简单出来下效果
![](https://img.haomeiwen.com/i1642207/806d66ab956419ee.png)
不可以有空格和和制表符号 将串嘛 复制到 刚刚我们提到的 合作伙伴秘钥中。
同理:继续改造我们的 私钥 将 私钥 放置到我们的 代码中。
![](https://img.haomeiwen.com/i1642207/21fe8a9d6c081f68.png)
配置完成了 ,那么另外需要注意的地方 就是 getOrderInfo()方法了
![](https://img.haomeiwen.com/i1642207/2a9a5a8dbfdf94cc.png)
![](https://img.haomeiwen.com/i1642207/6ec59050e2b82706.png)
见到就介绍到这里,开始集成你的支付宝吧(☆_☆)
关于微信支付集成,可参考:http://www.jianshu.com/p/c97639279d2e