应用调用此接口可以将用户的游戏角色信息保存到华为游戏服务器。
发布地区包含中国大陆的网络游戏(请向华为游戏运营人员确认游戏是否属于网络游戏),必须调用本接口保存玩家信息,但仅支持保存中国大陆用户的角色信息。如果游戏本身不具有游戏等级、角色名称、游戏区服、游戏公会这些信息,则可以不调用此接口。
● 本接口目前只支持保存中国大陆用户的玩家信息。
- HMSAgent.Game.savePlayerInfo(GamePlayerInfo gamePlayerInfo, SaveInfoHandler handler);
| 参数名称 | 必选(M)/可选(O) | 类型 | 参数说明 |
gamePlayerInfo | M | 需要保存的角色信息。 | |
handler | M | 接口调用后的回调结果,注册结束后通过此回调实例回调给应用。回调结果中包含的具体参数参见结果回调。 |
| 参数名称 | 必选(M)/可选(O) | 类型 | 参数说明 |
rank | O | string | 游戏等级。 当前玩家在游戏中的等级,需要和玩家在游戏中实际等级保持一致。 |
role | O | string | 角色名称。 玩家在游戏中创建的角色名称,需要和玩家在游戏中的实际角色名称保持一致,如果没有角色名称可不设置此属性。 |
area | O | string | 游戏区服。 玩家登录游戏时选择的区服,需要和玩家实际进入游戏区服名称保持一致,如果没有区服信息可不设置此属性。 |
sociaty | O | string | 游戏公会。 玩家在游戏中所属公会,如果没有加入公会可不设置此属性。 |
- public interface SaveInfoHandler{
- /**
- * 结果回调
- * @param retCode 返回码
- */
- void onResult(int retCode);
- }
| 参数名称 | 必选(M)/可选(O) | 类型 | 参数说明 |
retCode | M | int | 回调结果中的返回码,应用可以根据返回码判断上传是否成功或失败后如何处理,具体返回码处理参见返回码。 |
| 类型 | 返回码常量 | 返回码值 | 返回码说明 | 处理建议 |
通用返回码 | 参见通用返回码。 | |||
业务返回码 | GameStatusCodes.GAME_STATE_SUCCESS | 0 | 上传成功。 | |
GameStatusCodes.GAME_STATE_PARAM_ERROR | 7005 | 请求参数错误。 | 请检查所有请求参数的有效性。 常见错误:Manifest文件中application节点未配置开发者的支付ID,详细配置请参考配置工程文件。 | |
GameStatusCodes.GAME_STATE_NO_SUPPORT | 7006 | 当前区域不提供游戏服务。 | 您所在的地区目前还不支持接入华为游戏服务。如果是非华为手机出现此错误码,请尝试升级HMS Core(APK)至最新版本。 | |
GameStatusCodes.GAME_STATE_NOT_LOGIN | 7013 | 未登录华为帐号。 | 当应用调用其他游戏接口的时候,如果华为帐号未登录,则会返回该返回码。建议应用重新调用login接口。 | |
- private void savePlayerInfo() {
- showLog("game savePlayerInfo: begin");
- GamePlayerInfo gpi = new GamePlayerInfo();
- gpi.area = "20";
- gpi.rank = "level 56";
- gpi.role = "hunter";
- gpi.sociaty = "Red Cliff II";
- HMSAgent.Game.savePlayerInfo(gpi, new SaveInfoHandler() {
- @Override
- public void onResult(int retCode) {
- showLog("game savePlayerInfo: onResult=" + retCode);
- }
- });
- }