4

I am trying to save a high score integer to the user's Android system, so that it can persist throughout all game-play experience.

I have read that using Cocos2D-X one can use NSUserDefaults but this doesn't seem to be available in the Cocos2D-JS API at all.

Anyone has any experience with this, is there any other efficient way how to tackle this issue?

CodeSmile
  • 64,284
  • 20
  • 132
  • 217
magicode118
  • 1,444
  • 2
  • 17
  • 26

1 Answers1

16

When using Cocos2D-JS for compiling native apps, you can simply use localStorage just like if you were running your game in the browser :D

For example:

//Handle for quick access to Cocos2D's implementation of Local Storage:
var ls = cc.sys.localStorage;

var value = "foo";
var key  = "bar";

//This should save value "foo" on key "bar" on Local Storage
ls.setItem(key, value);

//This should read the content associated with key "bar" from Local Storage:
var data = ls.getItem(key);

cc.log(data); //Should output "foo" to the console.

//This should remove the contents of key "bar" from Local Storage:
ls.removeItem(key);

//This should print "null"
data = ls.getItem(key);
cc.log(data);
Sebastián Vansteenkiste
  • 2,234
  • 1
  • 19
  • 29