我使用下面的代码将数据保存到我的Android应用程序的共享偏好:Android的共享偏好的任务不是仿真器会话之间持续存在的
private SharedPreferences getOurSharedPreferences() {
return getSharedPreferences(SHARED_PREFS_FILENAME, MODE_PRIVATE);
}
SharedPreferences sharedPrefs = getOurSharedPreferences();
SharedPreferences.Editor editor = sharedPrefs.edit();
editor.putString(keyName, theString);
if (!editor.commit())
throw new RuntimeException("Unable to save new string.");
// Get it back as a test.
String s2 = getStringFromStorage(keyName);
凡SHARED_PREFS_FILENAME是私人最后静态字符串的keyName的名称是什么键我目前用作字段名称。该提交工作正常,我没有得到一个例外。正如你所看到的,我添加了一个检索最近提交的字符串的测试,并且当我检查它(s2)时,该值是正确的。所以我在我的应用程序的生命周期中没有任何共享偏好存储问题。但是,当我在仿真器中重新启动应用程序时,共享首选项存储区为空,并且找不到存储在上次模拟器会话中的值。我做了一些阅读,并且据我所见,存储的值应该保留在会话中,显然它们保存在属于模拟器的XML文件中。但我有问题。
任何人都可以告诉我为什么我的共享首选项存储值不会持续在Android模拟器会话之间吗?
- roshcler
您是否在与您的代码相关的堆栈跟踪中看到任何错误或警告? – rajath 2011-04-23 01:50:09
不,我不是。谢谢。 – 2011-04-23 03:52:56
我有同样的问题,但也在我的设备中测试,我运行我的应用程序,进行一些首选项更改,一切正常,然后停止并重新启动应用程序,并且更改已经结束! – maid450 2011-04-29 10:32:41