supersdk

文档中心

文档中心

下载文档

支付模块


一、接入前准备

1. 游戏需要先阅读公共配置并做好相关配置。

2. 游戏需要先完成登录模块所有接口的接入。

注意:游族游戏接入前,必须先接入游族的起点(区服)系统(运营和游族起点系统人员沟通)。

二、支付

接口描述:调用此接口会打开渠道的支付界面。

注意一:联调前需要在开服系统为区服配置游戏服务器的 Ip 或域名。

注意二:游戏不能依赖客户端 SDK 的支付回调进行游戏逻辑处理,比如首充显示等(部分渠道支付成功、失败没有回调)。

接口调用:

Dictionary<string, object> productDic = new Dictionary<string, object>();
productDic.Add(SuperSDKPlatform.KEY_PRICE, "1");  // 必传,购买金额,必须为大于 0
productDic.Add(SuperSDKPlatform.KEY_PRODUCT_ID,  "productId"); // 必传,productId,商品唯一标识(不能超过 40 个字符)
productDic.Add(SuperSDKPlatform.KEY_PRODUCT_NAME, "productName"); // 必传,productName,商品名称(不能超过 40 个字符)
productDic.Add(SuperSDKPlatform.KEY_PRODUCT_DESC,"productDesc"); // 必传,productDesc,商品描述
productDic.Add(SuperSDKPlatform.KEY_POINT_RATE, "pointRate"); // 必传,货币兑换比例,整形数字,现实货币与游戏货币的兑换比例,如现实货币 1 RMB,兑换游戏货币 10 元宝,则填 10
productDic.Add(SuperSDKPlatform.KEY_POINT_NAME, "pointName"); // 必传,游戏货币名称,如元宝、钻石、金币等
productDic.Add(SuperSDKPlatform.KEY_ORDER_TITLE,"orderTitle"); // 必传,订单标题,显示在充值页面的标题,部分平台对该值有要求
productDic.Add(SuperSDKPlatform.KEY_PAY_EXTRA, ""); // 非必传,透传字段,充值成功后会透传给游戏服务端

// 调用支付接口
SuperSDK.getInstance().Invoke(SuperSDKPlatform.MODULE_NAME, SuperSDKPlatform.FUNC_PAY, productDic);

接口回调:

public void OnCallBack(string moduleName, string funcName, string result)
{
    Debug.Log("moduleName:" + moduleName);
    Debug.Log("funcName:" + funcName);
    Debug.Log("result:" + result);

    JsonData resultData = JsonMapper.ToObject(result);
    //平台模块回调
    if (moduleName.Equals(SuperSDKPlatform.MODULE_NAME))
    {
        if (funcName.Equals(SuperSDKPlatform.FUNC_PAY_ORDER_ID))
        {
            // 获取订单成功
           string orderId = JsonMapper.ToJson(resultData["data"]); 
        }
    }
    else if (funcName.Equals(SuperSDKPlatform.FUNC_PAY))
    {
        if ((int)resultData["code"] == SuperSDKConstants.SUCCESS)
        {
            // 支付成功
            // 注意:游戏不能依赖此接口处理逻辑(比如:首充界面显示)
        }
        else
        {
            // 支付失败
        }
    }
}

日志打印:

moduleName:platform
funcName:payOrderId
result: {
    "code": 1,
    "msg": "get orderId success",
    "data": "OS_ZXLX97IK1B98RDL8L"
}
moduleName: platform
funcName: pay
result: {"code":1,"msg":"pay success"}

附录

常量字符串 实际字符串 描述
SuperSDKPlatform.MODULE_NAME platform 平台模块
SuperSDKPlatform.FUNC_PAY pay 支付方法
SuperSDKPlatform.FUNC_PAY_ORDER_ID payOrderId 获取订单号成功回调
SuperSDKPlatform.KEY_PRICE price 充值金额
SuperSDKPlatform.KEY_PRODUCT_ID productId 商品ID
SuperSDKPlatform.KEY_PRODUCT_NAME productName 商品名称
SuperSDKPlatform.KEY_PRODUCT_DESC productDesc 商品描述
SuperSDKPlatform.KEY_POINT_RATE pointRate 现实货币与游戏币兑换比例,如1:10,则填10
SuperSDKPlatform.KEY_POINT_NAME pointName 游戏货币名称,如元宝
SuperSDKPlatform.KEY_ORDER_TITLE orderTitle 订单标题