iOS 6保存/恢复应用程序状态function

我试图在iOS 6上使用新的保存/恢复应用程序状态function,但(应用程序:shouldRestoreApplicationState :)方法不会被调用,如果我杀了应用程序,所以它不会恢复应用程序状态,但如果我正在运行它从debugging器被调用。

它在我在plist中添加(应用程序不在后台运行)时起作用,并将其设置为YES,但我不想将其设置为YES。 我想知道如果任何人得到它的工作没有设置(应用程序不在后台运行)为YES。

从苹果文档:

当用户强制退出应用程序时,系统会自动删除应用程序的保留状态。 当应用程序被终止时删除保存的状态信息是安全的预防措施。 (为了安全起见,如果应用程序在启动期间崩溃了两次,系统也会删除保留状态。)如果您想testing应用程序恢复其状态的能力,则不应在debugging过程中使用多任务栏来终止应用程序。 相反,使用Xcode杀死应用程序或通过安装临时命令或手势来按需要调用退出来以编程方式closures应用程序。

从经验来看,最简单的方法是通过按主页button(或模拟器的Command + Shift + H)将您的应用程序置于后台。 然后使用Xcode停止button。 正如文档所build议的,debugging退出手势也可以。

更新:

我发现了一个小小的工作。 该应用程序将其状态保存在库/已保存的应用程序状态/ [软件包ID] – [应用程序名称] .savedState / data.data中。

在使用模拟器时,您可以复制该文件并在任何时候将其恢复到特定状态。

同样,在设备上,您可以从组织者生成.xcappdata存档。 然后,您可以上传.xcappdata存档,以便从该保存的状态进行恢复。