【发布时间】:2012-03-11 21:46:51
【问题描述】:
我注意到我的应用在从 Market 更新后丢失了存储在设备存储中的文件。我使用openFileOutput() 来获取一个目录来存储我的重要文件,正如here 所指定的那样。我希望这些文件会在更新之间保留,但似乎并非如此,至少对于 Froyo。如果这种行为是正确的,我应该如何以更新后不会被删除的方式存储我的文件?
【问题讨论】:
标签: android
我注意到我的应用在从 Market 更新后丢失了存储在设备存储中的文件。我使用openFileOutput() 来获取一个目录来存储我的重要文件,正如here 所指定的那样。我希望这些文件会在更新之间保留,但似乎并非如此,至少对于 Froyo。如果这种行为是正确的,我应该如何以更新后不会被删除的方式存储我的文件?
【问题讨论】:
标签: android
我注意到我的应用在从 Market 更新后丢失了存储在设备存储中的文件。
所有文件都在升级时保留。如果出现以下情况,文件将被删除:
此外,如果您更改 android:sharedUserId,您的文件不会被删除,但它们将归之前的用户 ID 所有,这意味着您的应用将永久混乱,直到用户卸载并重新安装。
我希望这些文件会在更新之间保留
他们是。
【讨论】:
Serializable 很容易出现这样的问题。就个人而言,我坚持但 Serializable。为什么坚持使用 Mark I Eyeball 无法轻松调试的脆弱格式?我宁愿保存到 SQLite、JSON 或 XML。