codecamp

挑战排行榜

定义

排行榜是指:开发者在登录开发者管理后台填写相应的排行榜配置,按标准格式要求上报数据后,实现小游戏在分享传播过程中,展现其他玩家参与游戏后成绩排行。


使用步骤说明

  1. 登录开发者管理后台后,在游戏设置-排行榜配置中完成配置

  2. 设置用户分组
    设置用户分组接口文档:tt.setUserGroup
  3. 完成规范格式的后台数据上报
    上报接口文档地址:tt.setUserCloudStorage
  4. 开发者在业务代码中获取数据
    获取排行榜数据接口文档: tt.getCloudStorageByRelation


示例

  1. 设置用户分组。groupId的生成完全由开发者决定,需结合开发者自身策略来确保其唯一性。

    该步骤必须确保是在上报游戏数据前执行,若在上报数据结果后执行,上报的结果将无法同步更新排行榜数据。

    tt.setUserGroup({
      groupId: "test_group"
    });
  2. 按照规范上报游戏数据。
  3. 配置了排行榜功能后,排行榜 key 对应的数据结构需要符合相应规范。详见 KVData

    const data = {
      ttgame: {
        score: 16,
        update_time: 1513080573
      },
      cost_ms: 36500
    };
    
    tt.setUserCloudStorage({
      KVDataList: [
        // key 需要在开发者后台配置,且配置为排行榜标识后,data 结构必须符合要求,否则会 set 失败
        { key: "score", value: JSON.stringify(data) }
      ]
    });
  4. 获取用户排行榜数据
    tt.getCloudStorageByRelation({
      type: "group",
      keyList: ["score"],
      extra: {
        sortKey: "score", // 指定的key需要在后台配置过
        groupId: "test_group" // 指定要获取的用户所属分组
      },
      success(res) {
        console.log(res);
      },
      fail(e) {
        console.log("获取数据失败");
      }
    });
UserGameData
tt.setUserGroup
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

无标题目录

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题目录

无标题文章

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }