JSON时一种轻量级的数据交换格式,无论是对人类阅读或及其解析都很友好。数据由逗号分隔,花括号保存对象,方括号保存数组,JSON本身就是一个对象。
Cocos2d-Lua中封装了JSON的编码类json.decode() 和json.encode()
二、crypto
crypto是Cocos2D-Lua提供的数据加密模块包括AES256、XXTEA、BASE64、MD5等几种加密算法
三、UserDefault
本质是一个XML文件,是Cocos2d-x提供的数据存储接口,仅支持数字,字符串和布尔值等基本数据类型
获取UserDefault实例接口:local userDefault = cc.UserDefault:getInstance()
添加数据:cc.UserDefault:getInstance():setStringForKey(pKey, value)
获取数据:cc.UserDefault:getInstance():getStringForKey(pKey, value)
保存文件:cc.UserDefault:getInstance():flush()
由于每次set和get都灰遍历整棵XML树,所以效率较低,只适合小规模使用。
四、GameState
Quick中特有的存储类,由数据效验的功能,Quick框架默认不加载GameState,在MyApp.lua的开头位置:
GameState = require(“framework.cc.GameState”) 变可以在其他模块代码中直接调用GameState的相关接口
模块加载后需要初始化一些信息,通过init接口实现
GameState.init(eventListener,Filename,secretKey)
参数:eventListener——数据文件载入或保存时的数据处理函数
stateFilename——保存的文件名,文件将会存到device.writablePath路劲下
secretKey为效验文件时所使用的密钥