如何在Android中存储游戏级别得分?

VSC*_*VSC 2 android game-development

请告诉我如何存储级别信息(如愤怒的小鸟级别显示屏包含******同我的Android游戏).

Amo*_*tir 6

您可以使用SharedPreferences存储它们.

public void saveDataToPreferencesFile(Context ctx, String filename, String...data) {
        SharedPreferences prefs = ctx.getSharedPreferences(filename, 0);
        SharedPreferences.Editor editor = prefs.edit();     

        for(int i = 0; i < data.length; i += 2) {
            editor.putString(data[i], data[i + 1]); 
        }

        editor.commit();
}
Run Code Online (Sandbox Code Playgroud)

您可以在哪里拨打以下电话:

saveDataToPreferencesFile(context, "scores", new String [] {"score", "3"});
Run Code Online (Sandbox Code Playgroud)

然后您可以通过执行以下操作来读取值:

public String readDataFromPreferencesFile(Context ctx, String filename, String key) {
        SharedPreferences prefs =  ctx.getSharedPreferences(filename, ctx.MODE_PRIVATE);

        return installationSession.getString(key, "0");
    }
Run Code Online (Sandbox Code Playgroud)

并拨打以下电话:

readDataFromPreferencesFile(context, "scores", "score");
Run Code Online (Sandbox Code Playgroud)

这比使用SQLite存储它们更容易和轻松(除非你真的需要一个关系模型).