0

我有file A,这是共享偏好。授权详细信息存储在file A. 一些笔记存储在file B. 当我更新应用程序版本时,我希望擦除file A,但保留file B。我想擦除文件 A,因为我可能想更改加密机制以提高安全性。但是文件 B 中的注释可能包含重要且较长的信息,因此我需要将它们保存在版本之间。文件 B

Context.MODE_WORLD_WRITEABLE
4

1 回答 1

1

我会在资源文件中存储一个版本号,如下所示

<string name="app_version">x.x.x</string>

SharedPreferences如果该版本尚不存在,则将该版本保存到该版本中。然后,当您启动您的应用程序时,将您的偏好版本与资源版本(您将在每次发布之前更新)进行比较。如果它们不匹配,则您的应用程序已更新,然后您可以执行文件修改。

有一个例外,用户可以从操作系统调用清除数据。如果发生这种情况,您的代码将在打开应用程序时再次执行,因为所有首选项都将被清除,但无法阻止这种情况。

希望这可以帮助

于 2013-06-10T11:58:54.713 回答