Fco*_*der 22 java database android application-settings
我想保存一个标志,用于识别我的应用程序是否第一次运行.对于这个简单的工作,我不想创建数据库..
有这么简单的选择吗?我只想保存和阅读一小部分信息.
Aja*_*y S 54
使用sharedPreference或files保存数据但更好的选择是sharedPreference.
用于检索
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
boolean silent = settings.getBoolean("silentMode", false);
Run Code Online (Sandbox Code Playgroud)
为了节省
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("silentMode", true);
editor.commit();
Run Code Online (Sandbox Code Playgroud)
Raj*_*ena 30
使用SharedPreferences.
SharedPreferences preferences = getSharedPreferences("prefName", MODE_PRIVATE);
SharedPreferences.Editor edit= preferences.edit();
edit.putBoolean("isFirstRun", false);
edit.commit();
Run Code Online (Sandbox Code Playgroud)
Joo*_*oop 10
一个正确的方法是使用Android类SharedPreferences,用于这样的事情.
SharedPreferences settings = getSharedPreferences(NAME_OF_PREFERENCES, MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("appPreviouslyStarted", true);
editor.apply();
Run Code Online (Sandbox Code Playgroud)
不要忘记申请或您的突变设置将不会被保存!
您可以使用不同的方法创建多个设置NAME_OF_PREFERENCES.设置存储在设备上,因此在关闭应用程序后可以使用.
当您尝试检索NAME_OF_PREFERENCES尚未创建的时,您将创建一个新的.在这里查看更多此类行为.
您可以使用editor.apply(),以及editor.commit(),唯一不同的是,适用()不返回boolean与如果编辑成功与否值.editor.apply()因此更快,更常用.
您可以在此处查看有关不同模式的所有信息.对于你的情况MODE_PRIVATE很好.
SharedPreferences settings = getSharedPreferences(NAME_OF_PREFERENCES, MODE_PRIVATE);
boolean silent = settings.getBoolean("silentMode", false);
Run Code Online (Sandbox Code Playgroud)
从SharedPreferences对象检索设置时,您始终必须指定一个默认值,该值将在未找到设置时返回.在这种情况下false.