2016-12-22 35 views
0

我希望得到一些关于如何正确执行状态保存和恢复的应用程序的建议,这些应用程序已经构建好,具有很多视图控制器和复杂的层次结构。为已经构建的应用程序实现状态恢复

当试图为运行一段时间的应用程序保留状态时,需要记住哪些事情?

编辑:

我希望得到澄清或可能得到一个解决方案,我面临着恢复状态转为方面存在问题。我在启动时成功恢复了应用程序的状态。我在层次结构中还原视图控制器和其他视图控制器。现在,当我推另一个视图控制器和其他视图控制器序列导航。堆栈,在一个特定的视图控制器,由于某种原因,应用程序崩溃,由于例外。所以当我打开应用程序时,它仍然会恢复按Home按钮时保留的第一个视图控制器的状态。

具体而言,我想知道是否有任何方法放弃应用程序状态信息。当应用程序由于未捕获的异常而终止?我知道,如果用户手动强制杀死应用程序,或状态恢复失败,或者应用程序在启动时终止,状态将被丢弃。有没有一种方法可以捕捉到终止并相应地配置应用程序状态?建议会很好。谢谢。

+0

太宽泛。应用程序是一个应用程序。国家恢复是国家恢复。如果你想添加状态恢复,添加它。这很简单(当然,你将需要做很多工作,因为你必须单独处理每个视图控制器)。你遇到过什么具体问题? – matt

+0

从我的理解来看,应该在我们构建应用程序时进行状态恢复。就像提前计划并开始实施一样。我想知道在应用完成后是否会有任何特定的恢复问题。只是想提前计划,而不是陷入困境并涉及太多时间。 –

+0

“我想知道在应用程序完成后是否会有任何特定的修复困难,只是想提前计划而不是陷入困境,并且花费太多时间。”太宽泛!如何知道你是否会遇到特殊困难?如果你有特定的问题,请回来询问一下。就目前而言,这对Stack Overflow来说并不恰当。我们没有水晶球。挖掘并看看会发生什么。 – matt

回答

1

从我的理解,当我们沿着建设应用

不,我不认为这是正确的,在所有的移动状态恢复应该做的。内置状态保存和恢复机制的全部优点在于它可以一次贴到工作应用程序,一个视图控制器上。在测试之前,您甚至不必为整个应用程序完成它;相反,该机制的另一个优点是,它仅适用于实际实现的视图控制器层次结构的子集,而不会对应用程序的其余部分造成损害。因此,从视图控制器层次结构的顶部开始,并开始实施它。

+0

不,这在我看来是一个完全不同的问题。 – matt