前言:
现如今第三方支付已经是横行天下,Apple Pay,三星pay,支付宝,微信....等等,在他们互相争夺市场的时候,当然方便的是我们普通老百姓!今天我们来讲讲支付宝和微信支付的集成!
支付宝
支付宝集成比较简单,主要是一些参数的设置和证书的申请!
具体不懂的可以参考官方:
https://fun.alipay.com/zfbxt/jicheng.htm
https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.OTo9m3&treeId=193&articleId=105518&docType=1
1.开放平台入驻 Open.alipay.com
登录open.alipay.com—管理中心
2.应用信息
修改信息,按要求提交,越清楚审核通过率越高
3.应用环境
按实际情况填写
4.功能信息
非常重要,必须正确配置!
5.线下支付所需基本功能(必选)
6.线下支付附加功能(可选)
7.技术开发
支付宝允许使用沙箱开发
8.上线(签约)
应用开发完成后,进行上线操作
以上是基本的申请步骤,详细的解说在上面的网址中,我们主要讲解,如何代码集成! 1.下载支付宝SDK包集成到你的项目中:
2.调用支付宝支付的代码:
/**
* call alipay sdk pay. 调用SDK支付
*
*/
public void pay(String subject, String body, String total_fee,
String notify_url, String out_trade_no) {
// 订单
String orderInfo = getOrderInfo(subject, body, total_fee, notify_url,
out_trade_no);
// 对订单做RSA 签名
String sign = sign(orderInfo);
try {
// 仅需对sign 做URL编码
sign = URLEncoder.encode(sign, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
// 完整的符合支付宝参数规范的订单信息
final String payInfo = orderInfo + "&sign=\"" + sign + "\"&"
+ getSignType();
Runnable payRunnable = new Runnable() {
@Override
public void run() {
// 构造PayTask 对象
PayTask alipay = new PayTask(OrderDetailActivity.this);
// 调用支付接口,获取支付结果
String result = alipay.pay(payInfo);
Message msg = new Message();
msg.what = SDK_PAY_FLAG;
msg.obj = result;
mHandler.sendMessage(msg);
}
};
// 必须异步调用
Thread payThread = new Thread(payRunnable);
payThread.start();
}
代码相对比较简单,只要按照教程来,应该是没问题的!
微信支付集成
参考官方文档:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_12&index=2
1.下载微信支付SDK并且集成到你项目中去:
必须有这个包,而且包里面必须有这三个类,类名一定要是这样(这一点觉得很奇葩,支付宝就没有这么多要求)
2.代码集成:
初始化调起支付的类。
完整的支付参数。
基本就是这些步骤,截图是我集成到的一个上线项目中的代码,所以没有直接使用代码,而是截图,怕侵权!