好游快爆云存档SDK-接入文档

版本 更新说明 日期
V1.0.0.0 1.初始化存档,取档,档位列表三个功能 2021-12-24

1. SDK嵌入

  1. SDK下载完,将sdk包中的common.aararchives.aarcopy到您的游戏项目的libs目录下。
  2. 在工程的build.gradle文件下添加以下代码即可完成依赖,
android {
    defaultConfig {
        //方法数超过65536时,开启多dex的支持
        multiDexEnabled true
    }
}

repositories {
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    //引入广告SDK依赖
    implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])
}

然后同步下gradle即可。

2. 接入代码

2.1 GameArchivesDataBean数据实体类介绍

字段含义 字段名 是否可选 说明
游戏ID gameId 必须 云存档云端为游戏存取档的唯一字符串。使用此 ID 来引用你游戏客户端中保存的游戏。
用户ID userId 必须 来自好游快爆防沉迷sdk或者支付sdk的登录成功后获取的HykbUser
用户登陆类型 loginType 必须 来自好游快爆防沉迷sdk或者支付sdk的登录成功后获取的HykbUser
用户token token 必须 来自好游快爆防沉迷sdk或者支付sdk的登录成功后获取的HykbUser
档位ID archivesId 必须 游戏开发者提供的档位ID,必须是整数
档位标题 archivesTitle 必须 游戏开发者提供的存档标题,长度不超过 30 的字符串
档位内容 archivesContent 必须 游戏开发者提供的存档标题,内容大小不得超过1M
档位时间 updateTime 自动 存档成功后,该字段由服务端自动生成

以上的字段内容,通过set设置值,比如setGameId("111"), get 方式取值,比如getArchivesContent()

2.2 存档

接入示例:

GameArchivesDataBean dataBean = new GameArchivesDataBean();
dataBean.setGameId("游戏ID");
dataBean.setUserId("好游快爆用户ID");
dataBean.setLoginType("好游快爆登录类型");
dataBean.setToken("好游快爆登录的token");
dataBean.setArchivesId(11);//存档ID,整数,由开发者自己传
dataBean.setArchivesTitle("存档标题");
dataBean.setArchivesContent("存档内容");
HykbGameArchives.saveArchivesData(SaveArchivesActivity.this, dataBean, new HykbSaveArchivesListener() {
                @Override
                public void onSuccess() {
                    //存档成功
                }

                @Override
                public void onFailed(int code, String message) {
                    //存档失败,失败的原因在code和message中
                    Log.i("archives","code = "+code+",message = "+message);
                }
            });

接口方法:

HykbGameArchives.saveArchivesData(Context context, GameArchivesDataBean bean, HykbSaveArchivesListener listener);

参数定义:

参数名称 描述
context 当前应用的ApplicationContext或Activity
bean GameArchivesDataBean:存档数据和参数的实体对象
listener HykbSaveArchivesListener 存档回调监听

2.3 取档

接入示例:

GameArchivesDataBean dataBean = new GameArchivesDataBean();
dataBean.setGameId("游戏ID");
dataBean.setUserId("好游快爆用户ID");
dataBean.setLoginType("好游快爆登录类型");
dataBean.setToken("好游快爆登录的token");
dataBean.setArchivesId(11);//存档ID,整数,由开发者自己传
HykbGameArchives.readArchivesData(SaveArchivesActivity.this, dataBean, new HykbReadArchivesListener() {
    @Override
    public void onSuccess(GameArchivesDataBean dataBean) {
        //取档成功
        StringBuilder sb = new StringBuilder();
        sb.append("存档ID:");
        sb.append(dataBean.getArchivesId());
        sb.append("\n");
        sb.append("存档标题:");
        sb.append(dataBean.getArchivesTitle());
        sb.append("\n");
        sb.append("存档内容:");
        sb.append(dataBean.getArchivesContent());
        Log.i("archive", sb.toString());
    }

    @Override
    public void onFailed(int code, String message) {
        // 取档失败,失败原因在code和message中
        Log.i("archive","code = "+code+", message = "+message);
    }
});

接口方法:

HykbGameArchives.readArchivesData(Context context, GameArchivesDataBean bean, HykbReadArchivesListener listener);

参数定义:

参数名称 描述
context 当前应用的ApplicationContext或Activity
bean GameArchivesDataBean:存档数据和参数的实体对象
listener HykbReadArchivesListener 取档回调监听

2.4 获取档位列表

接入示例:

GameArchivesDataBean bean = new GameArchivesDataBean();
bean.setGameId(gameId);
bean.setUserId(user.getUserId());
bean.setLoginType(user.getType());
bean.setToken(user.getToken());
HykbGameArchives.loadAllArchivesData(ArchivesListActivity.this, bean, new HykbLoadArchivesListener() {
            @Override
            public void onSuccess(List dataBean) {
                Log.i("archive","dataBean = "+dataBean.toString());
                // 成功获取到档位列表数据
            }

            @Override
            public void onFailed(int code, String message) {
                // 获取档位列表失败,失败原因在code和message中
                Log.i("archive","code = "+code+", message = "+message);
            }
        });

接口方法:

HykbGameArchives.loadAllArchivesData(Context context, GameArchivesDataBean bean, HykbLoadArchivesListener listener);

参数定义:

参数名称 描述
context 当前应用的ApplicationContext或Activity
bean GameArchivesDataBean:存档数据和参数的实体对象
listener HykbLoadArchivesListener 获取档位列表回调监听

注意:存档列表数据是没有档位内容的,开发者需要根据存档ID去获取

2.5 代码混淆

如果您需要使用proguard混淆代码,需确保不要混淆SDK的代码。
请在proguard.cfg文件(或其它混淆文件)尾部添加如下配置:

# 不能混淆监听
-keep class com.m3839.sdk.common.** {*;}
-keep class com.m3839.sdk.archives.** {*;}

2.6 接口状态返回的code和message

code message
101 存档标题超出30字符
102 网络异常
103 操作过于频繁(目前存档、读档、列表请求间隔为3s)
1001 存档保存失败
1101 账号信息已失效,请重新登录
2001 游戏存档未配置(目前是技术配置游戏id后才可使用存档 )
2002 档位不存在
2004 存档内容超出1M
2005 最多只能存储10个档位
2101 包体错误(检查下包名和签名是否正确)

你可能感兴趣的:(好游快爆云存档SDK-接入文档)