我希望以一种能够在设备断电后存活的方式存储一些简单的数据 - 闹钟时间和一些布尔值。我一直在尝试使用sharedPreferences,但是当我重新启动手机时数据会丢失(如果手机保持打开状态,它会幸免于难)。
我已经阅读了这些文档,并扫描了这个网站以及其他网站,但是我无法找到关于sharedPreferences是否持久的明确答案。
我可以使用SqlLite或文件存储值,但我只是想知道在编写任何不必要的代码之前我是否可能做错了。
以下是一些代码段:
public static final String ALARM_PREFERENCES = "AlarmPrefs";
public static final String ALARM_PREFERENCES_VIBRATE = "AlarmVibrate"; // Boolean
...
prefs = getSharedPreferences(ALARM_PREFERENCES, MODE_PRIVATE);
...
mVibrate.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Editor editor = prefs.edit();
editor.putBoolean(ALARM_PREFERENCES_VIBRATE,mVibrate.isChecked());
editor.commit();
}
});
答案 0 :(得分:3)
SharedPreferences在手机启动期间保持不变。保存prefs的代码看起来也不错。