applicationWillTerminate不会强制退出iOS应用程序的调用

有没有人对iOS 5/6中的applicationWillTerminate调用什么时候/什么条件有所了解?

我有一些逻辑,我希望在应用程序终止时执行(不移动到后台),例如,如果用户通过双击主页button导航到屏幕底部的应用程序栏,强制退出应用程序。

当我尝试在testing设备上执行此操作时,applicationWillTerminate似乎不会被调用。 是否有一个原因?

我的计划B是将该逻辑与某个持久对象绑定,如单例或静态,当应用程序退出时会自动销毁。

有什么build议么?

谢谢

您是否阅读了applicationWillTerminate的文档:

它说,

对于不支持后台执行的应用程序或与iOS 3.x或更低版本链接的应用程序,当用户退出应用程序时,总是调用此方法。 对于支持后台执行的应用程序,当用户退出应用程序时,通常不会调用此方法,因为在这种情况下应用程序只是移动到后台。 但是,这种方法可能会在应用程序在后台运行(未挂起)并且由于某种原因需要终止系统的情况下调用

那里有一个“也许”。 可能是那个回答你的问题。 所以当你退出应用程序时,这是不必要的。 也许你可能不得不使用UIApplicationExitsOnSuspend来禁用多任务处理,然后在后台进行调用。 但是,这又取决于你的应用程序的要求。 如果你不能禁用多任务,你可能会考虑在applicationDidEnterBackground方法中这样做。 我不确定是否有其他代表方法可以帮助确定武力退出。