保存应用状态

Posted

技术标签:

【中文标题】保存应用状态【英文标题】:Saving app state 【发布时间】:2014-06-02 00:44:49 【问题描述】:

是否有一个自然的地方可以保存 android 应用关闭时的状态?目前,我在onDestroy() 中为我的主要活动执行此操作,然后在onCreate() 中重新加载以进行相同的活动。那是合适的地方吗?

【问题讨论】:

【参考方案1】:

应用程序不会在任何传统意义上“关闭”。您的 UI 可能会移至后台,并且您的进程最终将被终止。

在许多情况下,保存应用状态的正确时间是状态发生变化的时候。在最坏的情况下,当 Activity 移动到后台时(即在 onPause()onStop() 中)保存 activity 的状态。

onDestroy() 不能保证在任何组件上被调用,包括活动。因此,它不是保存状态的合适位置。

另请注意,对于术语“保存”的任何典型定义,如果您不想丢帧和冻结 UI,保存状态需要后台线程。

【讨论】:

以上是关于保存应用状态的主要内容,如果未能解决你的问题,请参考以下文章

iOS 保存读取与应用状态

如何在 Cordova 应用程序退出时保存状态?

在 iPhone 应用程序中保存状态的位置

使用提供程序包 FLUTTER 关闭应用程序后保存状态

如何保存我的 android 应用程序的状态?

应用关闭时Android WebView保存显示状态