我想知道如何正确地为已经构建的应用程序实现状态保存和恢复,有很多视图控制器和复杂的层次结构。
尝试为已经运行一段时间的应用保留状态时,要记住哪些事项?
修改
我希望澄清或者可能解决我在恢复状态方面遇到的问题。我在发布时成功恢复了应用状态。我在层次结构中恢复视图控制器和其他视图控制器。现在,当我将另一个视图控制器和其他视图控制器序列推送到nav时。堆栈,在特定的视图控制器上,由于某种原因,应用程序因异常而崩溃。因此,当我打开应用程序时,它仍然会恢复按下主页按钮时保留的第一个视图控制器的状态。
具体来说,我想知道是否有任何方法可以放弃应用状态信息。当应用程序因未捕获的异常而终止时?我知道如果用户手动强制杀死应用程序,或状态恢复失败,或者应用程序在启动时终止,状态将被丢弃。有没有办法捕获终止并相应地配置应用程序状态?建议会很棒。感谢。
答案 0 :(得分:1)
根据我的理解,应该在我们构建应用程序时完成状态恢复
不,我根本不认为这是对的。内置的状态保存和恢复机制的整体美妙之处在于它可以一次修补到工作应用程序,一个视图控制器上。在测试之前,您甚至不必为整个应用程序完成它;相反,该机制的另一个优点是它仅适用于实际实现的视图控制器层次结构的子集,而不会对应用程序的其余部分造成任何损害。所以,从视图控制器层次结构的顶部开始,然后开始实现它。