Skip to content

Unity接入

WARNING

在接入SDK之前, 建议先请仔细阅读:接入流程
SDK提供了Unity的Demo,里面对Android/iOS层的逻辑进行了简单的封装,故本文档仅供参考,游戏层也可以自行处理调用逻辑

基础配置

1、将UnityDemo/Assets/Scripts/SDK目录拷贝到游戏工程的Assets/Scripts目录下, 如果游戏层已经存在SDK目录,可以重新创建一个目录,将上述目录中的代码拷贝进去;SDK目录下是封装好的Unity层的API调用组件。

2、 将UnityDemo/Assets/Plugins/文件拷贝到游戏工程的Assets/Plugins/下。Plugins/Android目录下,是Android平台相关的SDK库和配置文件;Plugins/iOS目录下,是iOS平台相关的SDK库和配置文件。

接口调用

1、初始化

csharp
UGSDKInterface.Instance.Init();


// 设置回调:

UGSDKInterface.Instance.OnLoginSuc = delegate(UGLoginResult result)
{
    // SDK登录成功回调, result为SDK登录结果
    // result.userID: 用户在SDK中的唯一用户ID
    // result.username: 用户名
    // result.token: 登陆token,需要和userID一起发给服务端,服务端去SDK服务器做登录验证,具体协议参考服务端文档
    // result.newAccount:  1:新用户;0:老用户
};

UGSDKInterface.Instance.OnLogout = delegate()
{
    // 当玩家从SDK中登出时,会触发该回调。 游戏层需要引导玩家返回到游戏登录界面重新登录进入游戏
};

2、登录

在玩家进入游戏之前, 需要调用登录接口,弹出SDK的登陆界面:

csharp
UGSDKInterface.Instance.Login();

3、登出

如果游戏内有登出按钮, 当玩家点击登出按钮的时候, 调用登出接口后(不用等待回调结果),立即返回到游戏登陆界面(不用等待回调结果)

csharp
UGSDKInterface.Instance.Logout();

4、角色数据上报

csharp
UGRoleData data = new UGRoleData();
data.roleID = "1";              //玩家角色ID
data.roleName = "测试角色";      //玩家角色名称
data.roleLevel = "15";          // 玩家角色等级
data.serverID = "10";           // 当前服务器ID
data.serverName = "地狱之恋";    // 当前
data.vip = "1";                 // 当前角色VIP等级
data.createTime = "0";          // 角色创建时间,从1970年到现在的时间,单位秒
data.lastLevelUpTime = "0";     // 角色等级变化时间,从1970年到现在的时间,单位秒

data.type = UGRoleData.TYPE_CREATE_ROLE;        //上报类型. 1: 创建角色;2:进入游戏;3:等级提升;4:退出游戏

UGSDKInterface.Instance.SubmitGameData(data);

5、支付

csharp
UGPayParams data = new UGPayParams();
data.productID = "1";                             //游戏内商品ID,可以和google后台的商品ID不一致。 在SDK后台配置商品ID的映射关系即可
data.productName = "元宝";                        //商品名称
data.productDesc = "购买100元宝,赠送20元宝";      //商品描述
data.price = 100;                                //商品价格,单位分
data.currency = "CNY";                           //货币单位,默认CNY
data.serverID = "10";                            //服务器ID
data.serverName = "地狱之恋";                     //服务器名称
data.roleID = "1";                               //角色ID
data.roleName = "测试角色";                       //角色名称
data.roleLevel = "15";                           //角色等级
data.vip = "1";									 // vip
data.payNotifyUrl = "http://localhost:8080/payCallback";    //游戏服的支付回调地址,用于接收支付回调通知
data.cpOrderID = "test_00000001";               //游戏自己的订单号
data.extra = "test_data";                       //扩展数据, 支付成功回调通知游戏服务器的时候,会原封不动返回这个值

UGSDKInterface.Instance.Pay(data);

版权所有© 2021-2030 上海丞诺网络科技有限公司