Android
Android平台上的快捷支付开发包接口如下表所示:
接口名称 | 接口描述 |
PayTask | 开发包提供支付,查询的对象接口。 |
PayTask对象主要为商户提供订单支付功能,及获取当前开发包版本号。
订单支付
方法名称:payTask.pay
方法原型:PayTask payTask = new PayTask(activity); payTask.pay(orderInfo,true);
方法功能:提供给商户订单支付功能。
方法参数: 实例化PayTask,传入参数activity 的实例。
参数名称 | 参数说明 |
String orderInfo | 主要包含商户的订单信息,key=“value”形式,以&连接。 |
boolean isShowPayLoading | 用户在商户app内部点击付款,是否需要一个loading做为在钱包唤起之前的过渡,这个值设置为true,将会在调用pay接口的时候直接唤起一个loading,直到唤起H5支付页面或者唤起外部的钱包付款页面loading才消失。(建议将该值设置为true,优化点击付款到支付唤起支付页面的过渡过程。) |
支付参数示例如下,参数说明见“请求参数说明 ”:
partner="2088101568358171"&out_trade_no="0819145412-6177"&subject="测试"&body="测试测试"&total_fee="0.01"¬ify_url="http://notify.msp.hk/notify.htm"&service="mobile.securitypay.pay"&payment_type="1"&_input_charset="utf-8"&it_b_pay="30m"&sign="lBBK%2F0w5LOajrMrji7DUgEqNjIhQbidR13GovA5r3TgIbNqv231yC1NksLdw%2Ba3JnfHXoXuet6XNNHtn7VE%2BeCoRO1O%2BR1KugLrQEZMtG5jmJIe2pbjm%2F3kb%2FuGkpG%2BwYQYI51%2BhA3YBbvZHVQBYveBqK%2Bh8mUyb7GM1HxWs9k4%3D"&sign_type="RSA"
返回值: 本方法调用的返回结果,参数说明见“同步通知参数说明”。字符串格式,形式一般如下:
resultStatus={9000};memo={};result={partner="2088101568358171"&out_trade_no="0819145412-6177"&subject="测试"&body="测试测试"&total_fee="0.01"¬ify_url="http://notify.msp.hk/notify.htm"&service="mobile.securitypay.pay"&payment_type="1"&_input_charset="utf-8"&it_b_pay="30m"&success="true"&sign_type="RSA"&sign="hkFZr+zE9499nuqDNLZEF7W75RFFPsly876QuRSeN8WMaUgcdR00IKy5ZyBJ4eldhoJ/2zghqrD4E2G2mNjs3aE+HCLiBXrPDNdLKCZgSOIqmv46TfPTEqopYfhs+o5fZzXxt34fwdrzN4mX6S13cr3UwmEV4L3Ffir/02RBVtU="}
注意:
返回结果需要通过resultStatus以及result字段的值来综合判断并确定支付结果。在resultStatus=9000,并且success=“true”以及sign=“xxx”校验通过的情况下,证明支付成功,其它情况归为失败。较低安全级别的场合,也可以只通过检查resultStatus以及success=“true”来判定支付结果。 Android平台和iOS平台的返回结果串唯一不同之处是resultStatus这个key,在iOS的返回结果串中原始的数据是ResultStatus(为了兼容历史版本首字母大写),Android平台是resultStatus。
获取开发包版本号
方法名称:payTask.getVersion
方法原型:PayTask payTask = new PayTask(activity); payTask.getVersion();
方法功能:获取当前开发包版本号。
方法参数: 实例化PayTask,传入参数activity 的实例。
返回值: String 类型值,如“2.0.0”。