共享偏好不断消失

时间:2011-06-28 20:50:01

标签: android sharedpreferences

我正在使用共享首选项来存储我的应用的登录凭据。除了一个用户外,一切正常。经过一段时间后,共享首选项似乎会以某种方式重置或清除。我已经为这个用户调整了我的应用程序,以便永远不再清除他的共享首选项。这样我可以肯定这不是我的应用程序的错。但即使经过这次修改,他的证书也会被清除,所以我怀疑他的设备正在发生其他事情。

你们有没有关于如何解决这个问题的建议?我一直在考虑创建另一个应用程序,它设置一个文件监视器来监视首选项文件。这样我希望看到文件被清除/删除的时间。也许有应用程序可以做到这一点?我甚至愿意将偏好文件提供给其他应用程序进行检查。有没有一种方法来诊断这个问题?我确定这不是我的应用程序正在进行清算/重置......

感谢您提供任何帮助。

2 个答案:

答案 0 :(得分:2)

需要考虑几件事。首先,如果可以,只需使用数据库,因为它们更可靠。其次,不要跨进程使用SharedPreferences对象,这可能不适用于这种情况。第三,在阅读SharedPreferences时,您必须在编写时使用相同的预防措施。使用单个SharedPreference对象和单个Editor对象。将SharedPreferences对象传递给您的方法和类,您不必重用编辑器。在过去,我有一天用户抱怨SharedPreferences被删除,但是一旦我实施了一些逻辑步骤,我的用户就不再烦我了。请记住,就像你说的那样,这种情况很少见。 1500个用户中有1个是可以忽略不计的百分比,但即使是单个用户也可能留下不好的评论: - )

答案 1 :(得分:-1)

您只有一个用户遇到此问题?你有多少用户?至少100?如果是这样,它可能是一个糟糕的设备。不要浪费时间追逐这个。