我遇到一个非常奇怪的错误:PreferenceManager.getDefaultSharedPreferences无法从设置文件中读取。
我喜欢这个:
在第一次活动开始时调用SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
并在下面第一步调用第一次设置断点。我检查pref.mFile
是否是正确的文件,但pref.mMap
是空的!!
我打开Es File Explorer,找到首选项文件并将其打开。所有首选项都存在,只是PreferenceManager无法以某种方式读取它们,因此在进入设置屏幕时,不会保存任何内容。
我已尝试清除该应用的所有数据,但下次更改设置并重新启动应用时会遇到同样的问题。
我在Android 2.x手机上遇到此错误。我构建了针对android 4.2.2,使用Eclipse,最新的sdk工具,目标sdk版本17。
任何想法为什么或如何解决?
答案 0 :(得分:0)
我在调试几个小时后发现了问题:保存到设置文件中的一些字符串包含无效字符,因此如果在下次读取时解析xml文件时失败了。