Tim*_*Tim 13 database storage android sharedpreferences
我在Android上开发了一款游戏.我目前正在保存数据库中的大部分游戏统计数据.但是,该应用程序不会在数据库中使用多个行.我现在有兴趣介绍一些新的统计数据,但这会导致我的数据库重新安装,从而清除每个人的进度.为了在将来避免这种情况,我正在考虑使用SharedPreferences存储游戏统计数据.我的问题是,在成为问题之前,可以通过这种方式存储多少种不同的东西.总的来说,我将存储大约40个值,所有整数.
Guz*_*zba 22
SharedPreferences被写入xml文件,因此Android上文件的最大大小是SharedPreferences xml文件的大小.我可以肯定地说,40个整数值不会成为问题.
SharedPreferences文件中值的最大大小限制为您尝试存储的值的最大大小.(这意味着你不能把比String更长的String值放在Java中.)
我唯一建议的是确保尽可能多地批量编辑(意味着不要.commit()每次更改),也不要为每次更改创建新的编辑器.(这些只是好的做法.)
SharedPreferences settings = getSharedPreferences(PREFS_FILE_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putInt("firstValue", mFirst);
editor.putInt("secondValue", mSecond);
editor.putInt("thirdValue", mThird);
// Commit the edits! (As infrequently as possible)
editor.commit();
Run Code Online (Sandbox Code Playgroud)
我不知道任何限制,但关于你的问题与每个人的进展被消灭.您可以覆盖SQLite类中的onUpgrade方法,然后将每个人数据迁移到较新的数据库.