Android SharedPreferences limitations?

后端 未结 4 1070
失恋的感觉
失恋的感觉 2020-11-29 11:26

I developed a game on Android. I am currently saving most of the game stats in a Database. However the app does not utilize more than a single row in the DB. I am now intere

4条回答
  •  一个人的身影
    2020-11-29 11:55

    SharedPreferences are written to xml files, so the maximum size of a file on Android is how large a SharedPreferences xml file can be. I can safely say that 40 integer values will not be a problem.

    The maximum size of a value in a SharedPreferences file is limited to the maximum size of the value you are attempting to store. (Meaning you can't put a String value that is longer than Strings can be in Java.)

    The only thing I would suggest is making sure to batch the edits as much as possible (meaning don't .commit() each change) and also don't create a new editor for each change. (These are just good practices.)

    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();
    

提交回复
热议问题