我正在尝试在iOS 6上使用新的保存/恢复应用状态功能,但是如果我杀了应用程序以便它不会恢复应用程序状态,则不调用(application:shouldRestoreApplicationState :)方法,但如果我我从它调用的调试器中运行它。
当我在plist中添加(Application不在后台运行)并将其设置为YES时,它工作正常,我不想将其设置为YES。我想知道是否有人在没有将(应用程序不在后台运行)设置为YES的情况下工作。
答案 0 :(得分:25)
当用户强制退出应用程序时,系统会自动删除应用程序的保留状态。在应用程序被终止时删除保留状态信息是一项安全预防措施。 (作为安全预防措施,如果应用程序在启动期间崩溃两次,系统也会删除保留状态。)如果要测试应用程序恢复其状态的能力,则在调试期间不应使用多任务栏来终止应用程序。相反,使用Xcode来杀死应用程序或通过安装临时命令或手势以编程方式终止应用程序。
根据经验,最简单的方法是通过按主页按钮(或模拟器的Command + Shift + H)将您的应用程序置于后台。然后使用Xcode停止按钮。正如文档建议的那样,调试退出手势也可以。
<强>更新强>
我找到了一个小作品。该应用程序将其状态保存在库/保存的应用程序状态/ [捆绑ID] - [应用程序名称] .savedState / data.data中。
使用模拟器时,您可以复制此文件,并在要恢复到该特定状态的任何时候将其删除。
同样,在设备上,您可以从组织者生成.xcappdata存档。然后,您可以在要从该已保存状态还原时上载.xcappdata存档。