我有一个Activity
应用程序,其中包含一个数据容器,该容器在从JSON格式的私有文本文件启动时填充。退出应用程序时,无论是正常退出还是强制退出,都必须将数据写回文本文件。
Android文档states,不应将应用程序数据保存在onDestroy方法中。
我现在已经覆盖了以下方法,以确保数据存储在exit:
protected void onStop() {
persistenceManager.storeIfChanged();
super.onStop();
}
protected void onPause() {
persistenceManager.storeIfChanged();
super.onPause();
}
storeIfChanged
方法将应用程序数据写入文本文件(如果自上次保存以来已更改)。 我的问题是,这是否保证应用程序数据的保存无论应用程序如何终止(除非是不可抗力)。 其次,在onStop和onPause中进行保存是多余的吗?
答案 0 :(得分:3)
是的,建议以onPause
保存数据。除非强制关闭应用程序,否则将始终保存数据。
在onPause
中调用它就足够了,onPause
始终在onStop
之前调用。