codecamp

KVData

托管的 KV 数据


属性

名称数据类型描述
keystring数据的 key
valuestring数据的 value


设置排行榜

平台提供了挑战排行榜功能,部分宿主 APP 会在其特有的功能页展示游戏排行数据。开发者若想利用,则需要把排行榜数据存储到对应的 key/value 中,一个排行榜数据对应一个 key,多个排行榜则多个 key。同时在小游戏管理后台“设置-小游戏排行榜设置”下配置对应的 key 以及相关排行榜属性。且 value 的内容必须是 JSON Object 格式序列化的字符串,该 JSON Object 顶层必须包含 ttgame 字段,定义如下:

属性名类型必填说明
scoreInt32游戏成绩,用该字段排序
update_timeInt64最后更新时间,Unix 时间戳

注意:

  1. 使用 setUserCloudStorage 接口设置 KVData 时,当 key 为排行榜 key,则 value 结构必须符合以上要求,否则会设置失败
  2. ttgame 下开发者不可自定义其他字段,score 为平台固定使用的排序字段,若开发者想要以某个游戏数据排序,需要将该数据存储在 score 字段上。 ttgame 同级开发者可自由定义,比如定义一个 progress 字段,用于游戏关卡进度。


示例

比如某小游戏有一个分数排行榜,分数排行榜需要记录分数以及获得分数的耗时(游戏内的排行榜需要展示耗时),可以在 ttgame 同级别定义一个 progress 字段,存储耗时的毫秒数。 分配一个不和已定义的托管数据的 key 相冲突的 key 作为分数排行榜的 key,如 "score"。

在玩家游戏结束后,闯过第 10 关,获得本周最高分 100 分,则需要数据,假设当前时间戳为 1557813466 则完整 value 在序列化之前的内容如下:

{
  "ttgame": {
    "score": 100,
    "update_time": 1557813466
  },
  "progress": 10
}

最终序列化为 string 后,value 为 "{"ttgame":{"score":100,"update_time": 1557813466},"progress":36500}"

tt.getSharedCanvas
UserGameData
温馨提示
下载编程狮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; }