LibGDX 游戏开发 之 Preferences

原文链接:https://github.com/libgdx/libgdx/wiki/Preferences
译者:重庆好爸爸 [email protected]
谢绝转载

概述

首选项是用于存储应用程序的小数据的简单方法,例如 用户设置,小游戏状态保存等。 首选项像哈希映射一样工作,使用字符串作为键,以及各种基本类型作为值。 首选项也是迄今为止在浏览器中运行应用程序时写持久数据的唯一方法。

获取Preferences实例

Preferences的实例可以通过如下代码片段获取

Preferences prefs = Gdx.app.getPreferences("My Preferences");

注意:你的APP可以有多个preferences实例,只需要给不同的名字即可。

Preference数据读写

修改Preference是修改JAVA MAP一样简单:

prefs.putString("name", "Donald Duck");
String name = prefs.getString("name", "No name stored");
prefs.putBoolean("soundOn", true);
prefs.putInteger("highscore", 10);

注意:getter方法有2种:带default value和不带default value. 带default value时,如果指定key没有值,则返回default value

Flushing

你修改的preference instance只有在执行flush()方法会才会保存下来。

// bulk update your preferences
prefs.flush();

存储 Storage

在Windows, Linux, and OS X, preferences 保存在用户home directory的xml文件中

LibGDX 游戏开发 之 Preferences_第1张图片
image.png

文件名是你使用Gdx.app.getPreferences()时设置的。

这里有一些有用的东西如果你想用来测试手工改变或者手工删除
Android系统中, 使用SharedPreferences 类. 这个意味着preferences在APP升级时仍然可以使用,但是app删除时,preference也会随之被删除。
IOS系统中,NSMutableDictionary会被写入给出的文件中[per javadocs]

你可能感兴趣的:(LibGDX 游戏开发 之 Preferences)