applicationWillTerminate没有调用强制退出iOS应用程序

Sea*_*ser 2 xcode objective-c ios

有没有人对在iOS 5/6中调用applicationWillTerminate的时间/条件有任何见解?

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

当我尝试在测试设备上执行此操作时,似乎没有调用applicationWillTerminate.是否有一个原因?

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

有什么建议?

谢谢

iDe*_*Dev 8

你读过的文档applicationWillTerminate: ,

它说,

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

那里有一个"可能".可能会回答你的问题.因此,当您退出应用程序时,不必调用它.可能您可能必须使用UIApplicationExitsOnSuspend禁用多任务处理,然后在放入后台时可能会调用它.但这又取决于您的应用程序要求.如果您无法禁用多任务处理,您可能会考虑在applicationDidEnterBackground方法中执行此操作.我不确定是否有任何其他委托方法有助于确定部队戒烟.