2013-03-28 129 views

回答

2

我想在系统杀死或强制停止我的活动或进程时坚持一些信息。

你不行。当系统强制停止你的应用程序时,它会被简单地杀死。没有回调被调用。

无论何时调用Activity的onPause()方法,都应该保持数据。

对于简单的int,String等值,可以使用SharedPreferences。对于更多有组织或更大的数据集,您应该使用SQLite database

+0

除此之外,@Raghav Sood的意思是,当系统杀死你的活动时,你不能只是这样做。在发生类似情况之前,您应该尽快保存重要数据。 –

+0

尝试使用线程和处理程序将序列化对象保存到文件中。给自己带来严重的头痛。 –

0

它取决于您想要维护的数据。对于少数配置信息或单个变量,只需使用Bundle即可。 SQlite更复杂,但允许搜索和数据编辑,这是与Bundle科学融合的。一般来说,除非需要,否则使用Bundle。 显然,隐含的是Bundle的使用不是自动的,你必须在应用程序被终止之前,在onDestroy()或onPause()中写入数据。它旨在保护从同一活动的一次运行到另一次运行的动态数据。 在最简单的情况下,对于少数字符串或整数,如果要持久保存数据,则应该选择第三个选项SharedPreferences。

相关问题