将SharedPreferences用于瞬态应用程序状态被认为是不好的做法吗?

时间:2011-07-18 20:21:02

标签: android

例如,如果我的应用程序有多个使用多个活动的表单,然后从最终活动向网站发送数据,那么将该表单的响应存储在SharedPreferences中然后检索是不好的做法数据并清除SharedPreferences?我想我可以将它们捆绑在一起,但我希望用户能够在会话过程中回到应用程序。

2 个答案:

答案 0 :(得分:1)

如果不是很多数据。 SharedPreferences足够好了。更好的选择可能是将其作为JSON存储在文件中,然后在用户返回时再次加载它。

答案 1 :(得分:0)

使用捆绑包通常会更好 - 最终捆绑包会在您的应用程序进程被终止时消失,但经过这段时间后,根据应用程序的不同,您的用户可能会打开应用程序以启动新的应用程序任务,而不是继续旧的。此外,由于bundle不是持久性内存,因此读/写它们不是IO阻塞任务。

也就是说,如果 要使用SharedPreferences,请确保在AsyncTask中读/写,因为它是阻塞的IO调用。或者,根据您存储的数据量,您可以尝试写入两者 sharedpref和Bundle,然后当您想要恢复活动时,首先检查捆绑 - 这会给你加速应用程序恢复的选项,但仍然有持续存储可以依赖。

相关问题