iOS9 中的应用程序恢复问题

Application Restoration Issue in iOS9

应用程序具有保存和恢复状态信息的功能。 它在 App 委托中使用 API shouldSaveApplicationState 和 shouldRestoreApplicationState,在相应的视图控制器中使用 application:willEncodeRestorableStateWithCoder 和 application: didDecodeRestorableStateWithCoder class。 因此,即使在从任何状态强制退出应用程序后,应用程序也会恢复状态。 这在 iOS 8.x.

之前工作正常

从iOS9.x,发现当应用程序从前台强制退出应用程序时,恢复不起作用。 这是因为再次启动应用程序时没有触发 shouldRestoreApplicationState 方法。

在所有其他情况下,应用程序恢复功能按预期正常工作。

我们的应用程序没有进行任何代码更改,但应用程序现在的行为有所不同。

请帮忙,因为这是该应用程序的关键功能之一。

这是设计使然。以下内容来自Apple documentation:

The system automatically deletes an app’s preserved state when the user force quits the app. Deleting the preserved state information when the app is killed is a safety precaution. (As a safety precaution, the system also deletes preserved state if the app crashes twice during launch.) If you want to test your app’s ability to restore its state, you should not use the multitasking bar to kill the app during debugging. Instead, use Xcode to kill the app or kill the app programmatically by installing a temporary command or gesture to call exit on demand.