支付宝支付官网地址: 打开官网
Andoird-安卓集成支付宝支付(接入阿里支付)详解,支付宝支付基本使用: 跳转
阿里支付demo和aar下载地址: 打开下载.
本章主要是根据支付宝提供的demo内容讲解下与拼接orderInfo商品信息相关的内容。
)
基本参数讲解
首先查看支付宝demo里的PayDemoActivity.java文件
- app_id 商户绑定的相对应app的id,例如:2013081700024223
如何查看相对应app的id? - pid。商户id, 如:2088102123816631
点击跳转: 如何查看商户id?
3.target_id 商户唯一标识,如:kkkkk091125
4.RSA2_PRIVATE 或 RSA_PRIVATE 密钥。 为接下来获取签名信息准备的参数,拼接orderInfo时最后拼接的信息。使用RSA2 或者 RSA 任意一个即可。
工具地址: 跳转.
构造商品(主要看authV2(View v)方法)
步骤1.构造授权参数列表
OrderInfoUtil2_0.buildAuthInfoMap
Map<String, String> authInfoMap = OrderInfoUtil2_0.buildAuthInfoMap(PID, APPID, TARGET_ID, rsa2);
这里需要传递的数据为 PID,APPID,TARGET_ID,签名。 返回的信息储存为Map格式。
步骤2.构造支付订单参数信息
通过步骤1.1.构造授权参数列表 我们获取的授权Map格式的数据,传递到buildOrderParam方法中,即可获取订单参数信息。
String info = OrderInfoUtil2_0.buildOrderParam(authInfoMap);
步骤3.获取签名信息
boolean rsa2 = (RSA2_PRIVATE.length() > 0);
String privateKey = rsa2 ? RSA2_PRIVATE : RSA_PRIVATE;
String sign = OrderInfoUtil2_0.getSign(authInfoMap, privateKey, rsa2);
准备的密钥参数 RAS2 或 RAS 在这一步就派上用场了。我们可以看到这个rsa2 boolean参数其实是支付宝demo判断用的哪一种密钥。放到我们自己项目里的话可以自行删减。
步骤4,拼接orderInfo
最后一步就是拼接商品信息了,orderInfo为字符串形式,用来提供给前端获取调用支付宝支付页面。
info为步骤2,构造的商品信息。
sign为步骤3,获取的签名信息。
final String authInfo = info + "&" + sign;
最后拼接出来的orderInfo大致为这样: (忽略 “+” 号,这里为了方便看我空了格)