GameState

quick-cocos2d-x数据存储之GameState

一个人想着一个人 提交于 2020-04-28 02:32:41
GameState是quick-cocos2d-x中特有的一个用户信息存储类,相对于CCUserDefault而言,它增加了数据校验的功能,当数据被人为的改变之后,会被检测出来,下面介绍它的主要用法。 一、初始化 因为GameState并没有在framework中加载,所以我们要在开始的代码中去加载,如在MyApp.lua的开头位置加载 GameState=require(cc.PACKAGE_NAME .. ".api.GameState") 二、提供的方法 1、 GameState.init (eventListener_, stateFilename_, secretKey_) 这个方法是初始化GameState,在场景初始化之前调用一次即可,如在MyApp.lua的MyApp:ctor()中调用。 eventListener_ 是载入或保存时调用的函数,可以写个匿名函数,后面会重点介绍; stateFilename_ 是保存的文件名,如果留空或非字符串(string)则是默认的state.txt,该文件会被保存到device.writablePath下; secretKey_ 是 校验文件时所用到的密钥,GameState保存的数据格式为{h = hash, s = s},s是我们要保存的数据(一个table),h则是要校验的一个md5码。如果secretKey