银联支付,支付宝支付,微信支付的三大总结,之前也有写过两篇。
微信支付,支付宝支付,银联支付——三大支付总结:
http://blog.csdn.net/androidstarjack/article/details/72669394
支付宝植入总结:
微信支付总结:
备注:出于安全考虑,验签我们都是放到后台进行验签的。对于我们移动端节省了很多的劳动力。
之前有做过支付宝支付和微信支付,所以这次做起来碰到的问题很少,key申请下来之后很快就搞定了。吼吼
效果图:
由于用鲁大师去截屏获取gif,鲁大师一针一针绘制图片的时候应该没做好处理,导致跳转到相应的界面出现黑屏现象。在手机上正常跳转,无黑屏现象。大家不用担心这个
准备:
需要以公司名义,在支付宝,微信等平台上开通公司账户并且认证,如:支付过程中需要公司的帐号和商户号。
支付宝支付
如果碰到一些坑的话,请参考我之前写过的意一篇支付宝踩坑的文章:
-
- 首先支付宝申请并集成支付宝SDK 这里不再详细介绍
参考文档:
https://doc.open.alipay.com/doc2/detail.htm?treeId=54&articleId=104509&docType=1
-
- 获取订单信息(根据自己公司的实际情况:可以在服务端完成,也可以在本地完成)
如:
price=12.5&num=12 //价格为12.5,数量为12
-
- 客户端拿这些订单信息向服务器后台进行请求,返回支付签名信息signInfo
-
- app携带支付信息,调用支付接口请求支付宝客户端,从而调起支付界面
/**
* 支付宝进行请求
*
* @param signInfo
*/
private void payToOrderService(final String signInfo) {
new Thread() {
@Override
public void run() {
super.run();
PayTask payTask = new PayTask(MyScannerPayActivity.this);
// String result = payTask.pay(signInfo, true);
Map<String, String> result = payTask.payV2(signInfo, true);
Message message = mHandler.obtainMessage();
message.what = SDK_PAY_FLAG;
message.obj = result;
mHandler.sendMessage(message);
}
}.start();
}
-
- 用户操作,输入密码支付,支付成功;直接返回取消支付;出现错误,支付失败;进入支付界面,但输入密码支付,支付待确认;
-
- 支付宝客户端将支付结果告诉app客户端,商户服务器通知a