android客户端接入H5文档

aar包引入

点击下载 0.8.2

设置生产\测试环境

    XPayH5.getInstance().setTest(true/false)  测试/生产

设置宿主环境

//钥匙
XPayH5.getInstance().setWalletPlatform("WIFI");
//钥匙极速版
XPayH5.getInstance().setWalletPlatform("WIFI_FAST");
//tips:其他宿主需要引入钱包sdk,目前还未开发完成

唤起收银台

ui版本
    XPayH5.getInstance().payH5(context, payParam);
    payParam 具体内容,见下面定义
无UI版本
//微信
XPayH5.getInstance().payH5(context, payParam, true, "{'wechat_pay': 'wechat_pay_h5'}", "wechat");
//支付宝
XPayH5.getInstance().payH5(context, payParam, true, "{'ali_pay': 'ali_pay_h5'}", "alipay");
//钱包
XPayH5.getInstance().payH5(context, payParam, true, "{'lianshang_pay': 'lswallet'}", "wallet");

设置回调

    XPayH5.getInstance().setPayCallback(new XPayH5.Callback() {
        @Override
        public void onPayResult(int payStatus, String msg) {
            //public static final int PAY_SUCCESS = 1;
            //public static final int PAY_ING = 10;
            //public static final int PAY_CLIENT_SUCCESS = 3;
            //public static final int PAY_LIFE_CYCLE = 2;
            //public static final int PAY_CANCEL = 0;
            //public static final int PAY_INVALID = -1;
            //public static final int PAY_ERROR = -2;
            //public static final int PAY_JSON_ERROR = -3;   
            //public static final int PAY_SHOW_CHECKSTAND = 60; //拉起收银台
            //public static final int PAY_SHOW_WECHAT = 61;     //拉起微信
            //public static final int PAY_SHOW_WALLET = 62;     //拉起钱包
            //public static final int PAY_SHOW_ALIPAY = 63;     //拉起支付宝          
        }
    });

payParam

payBizData
名字 类型 描述 是否可选
security_type String(6) Sign字段签名方式 ,目前为RSA NO
sign String(128) 商户签名,签名生规则见 签名、加密机制 章节 NO
pay_token String(128) 支付平台支付凭证PayToken,由生成支付交易服务生成,用来验证支付请求的有效性 NO
out_trade_id String(64) 外部订单号,第三方商户自己生成的订单标识,必须要唯一不能重复 NO
transaction_id String(64) 业务流水号,商户应保证唯一;业务流水号,和订单号不一样;只是个唯一的流水号 NO
payBaseData
名字 类型 描述 是否可选
appid String(32) 游戏传 appid NO
out_user_id string(64) 连尚账户相关:union_id...uhid... 二选一可为空
guest_id string(64) 1.CP方给出的:openid ;用openid + unionid 在支付端进行 查询连尚统一账户信息:uhid;2.游客:传给定值:GUESTER 二选一可为空
client_user_id string(64) 1.游客时:游戏cp方必传该字段;2.cp方定义的用户id;其他接入渠道不是必传项 NO
version String(6) 服务版本号,传 2 NO
request_id String(64) 请求信息标识,商户应保持唯一 NO
service_name String(32) 服务名称,跳转支付服务为"paymentAccessRequest" NO
platform String(10) 最终支付来源,即商户使用何种方式调用支付平台支付 H5/Quick App/Online/Native SDK/Offline/Android/iOS NO
time_stamp String(14) 时间戳(请求时的时间) NO
compress_type String(2) 压缩类型:0(不压缩),1(gzip) NO
language Int 语言 填0=中文 NO
merchant_id String(32) 支付平台商户ID,第三方接入支付平台支付前向支付平台支付申请获得 NO
Example
{
    "payBizData": {
        "pay_token": "",
        "sign": "...",
        "out_trade_id": "",
        "transaction_id": "",
        "security_type": "RSA"
    },
    "payBaseData": {
        "appid": "",
        "out_user_id": "",
        "request_id": "",
        "version": "2",
        "service_name": "paymentAccessRequest",
        "client_user_id": "",
        "platform": "Quick App",
        "time_stamp": "",
        "language": 0,
        "compress_type": "0",
        "merchant_id": "",
        "guest_id": ""
    }
}