Appearance
角色相关
WARNING
角色上报接口,请注意调用时机。 在创角成功、进入游戏等时机,一定要调用。 否则影响部分渠道的审核上架。
提交角色信息
当玩家创建角色成功、进入游戏内、角色等级升级时,需要调用角色上报接口。 每次调用,角色对象中的必选参数都需要全部设置。
java
private void submitExtraData(final int dataType){
UserExtraData data = new UserExtraData();
data.setDataType(dataType);
data.setMoneyNum(100);
data.setRoleCreateTime(System.currentTimeMillis()/1000);
data.setRoleID("role_100");
data.setRoleName("test_112");
data.setRoleLevel("10");
data.setRoleLevelUpTime(System.currentTimeMillis()/1000);
data.setServerID(10);
data.setServerName("server_10");
data.setPower("1000");
data.setVip("1");
data.setCustomData("111,222,333"); //自定义数据,存储在U8Server
data.setExtra("channel_extra_data"); //存放特别渠道要求的特殊上报数据项
U8Platform.getInstance().submitExtraData(data);
}
dataType主要有如下几种调用时机:
调用时机 | dataType值 |
---|---|
创建角色成功 | 2 |
进入游戏内 | 3 |
角色等级升级后 | 4 |
玩家点击退出游戏(可选) | 5 |
也就是在创建角色的时候,dataType为2;进入游戏时,dataType为3;等级提升时,dataType为4;退出游戏时,dataType为5。
UserExtraData 数据结构:
参数名称 | 参数类型 | 参数说明 |
---|---|---|
dataType | int | 调用时机,值为2、3、4或5, |
serverID | String | 玩家所在服务器的ID, |
serverName | String | 玩家所在服务器的名称, |
roleID | String | 玩家角色ID, |
roleName | String | 玩家角色名称, |
roleLevel | String | 玩家角色等级, |
roleCreateTime | long | 角色创建时间,从1970年到现在的时间,单位秒,必须传入真实的数据, |
roleLevelUpTime | long | 角色等级变化时间,从1970年到现在的时间,单位秒, |
moneyNum | String | 当前角色身上拥有的游戏币数量 |
vip | String | 玩家VIP等级 |
roleGender | int | 玩家性别,0:男;1:女 |
professionID | String | 玩家职业ID, 没有不传 |
professionName | String | 玩家职业名称,没有不传 |
power | String | 玩家战力,没有不传 |
partyID | String | 玩家公会ID,没有不传 |
partyName | String | 玩家公会名称,没有不传 |
partyMasterID | String | 玩家公会会长ID,没有不传 |
partyMasterName | String | 玩家公会会长名称,没有不传 |
customData | String | 游戏角色自定义数据 |
补充说明
为了最小化接口调用, 聚合SDK内部的一些功能逻辑, 会依赖角色上报接口。 依赖的功能见下表:
功能 | 依赖时机 | 说明 |
---|---|---|
自动补单 | 进入游戏 | 对于单机游戏,发货都在客户端。 聚合SDK中针对单机游戏,有自动补单机制。 该行为依赖进入游戏时机的角色上报接口,在这里进行补单逻辑的检查 |
后台角色查询/统计 | 创建角色/进入游戏 | U8SDK后台提供了角色查询和统计等功能,该功能依赖客户端的角色上报接口 |