Iphone applicationWillTerminate在4.3中被调用

Iphone applicationWillTerminate在4.3中被调用,iphone,Iphone,我将SDK和iOS更新为4.3。但当我退出应用程序(按Home按钮)时,将调用ApplicationIdentinterBackground和applicationWillTerminate方法 在4.2中,这个问题不存在-只调用了ApplicationIdentinterBackground。 可能的问题是什么?和解决方案,如果有的话?这是说: 适用于支持 后台执行,此方法是 当用户 退出应用程序,因为 应用程序只需移动到 那件事的背景。但是, 方法在某些情况下可能被调用 应用程序正在运行的位

我将SDK和iOS更新为4.3。但当我退出应用程序(按Home按钮)时,将调用ApplicationIdentinterBackground和applicationWillTerminate方法

在4.2中,这个问题不存在-只调用了ApplicationIdentinterBackground。 可能的问题是什么?和解决方案,如果有的话?

这是说:

适用于支持 后台执行,此方法是 当用户 退出应用程序,因为 应用程序只需移动到 那件事的背景。但是, 方法在某些情况下可能被调用 应用程序正在运行的位置 背景(未挂起)和 系统需要在某些情况下终止它 原因


在4.2和4.3之间,这方面没有任何重大变化,因此不清楚您为什么会看到变化。但不管是什么原因,这都是记录在案的行为,因此您的应用程序应该能够处理它。

这真的是个问题吗?不过,我在参考资料中没有发现任何关于这一变化的内容。假设,它可以是一种增强,让您在后台被杀死之前保存应用程序状态。问题是我的应用程序失去了多任务处理功能。它每次都从一开始(ApplicationIDFinishLaunhing..)开始,而不是从用户按下主屏幕(ApplicationIDBecMeactive)时留下的位置开始。如果您想让应用程序在后台运行,请尝试在plist中使用“UIApplicationExitsOnSuspend”。您已经尝试过了。问题存在。在这种情况下,请在应用程序被终止之前很久检查是否写入了任何内容。如果您正在调用OpenGL驱动程序或执行在后台被禁止的类似活动,则可能应该在applicationWillResignActive中禁用所有此类活动,而不是在ApplicationIdentinterBackground方法中禁用。现在问题已经解决。当我在ApplicationIdentinterBackground中对代码进行注释时,未调用applicationWillTerminate。然后我取消了注释代码并再次运行应用程序,令我惊讶的是,应用程序没有终止。希望,这种行为还会继续。