iOS 系统,关闭程序,applicationWillTerminate为调用问题解决

iOS4.0以后系统支持多任务类型,程序按下home键后,程序进入后台运行,如果内存不足被系统关闭或者手动关闭,都不会调用applicationWillTerminate回调函数。
解决方法:可以在程序进入后台时,添加一后台运行通知函数,也就是程序进入后台一段时间内,程序还在运行,并可以响应一些消息。代码如下:

- (void)applicationDidEnterBackground:(UIApplication *)application

{
    [[
UIApplicationsharedApplication
]
beginBackgroundTaskWithExpirationHandler
:^(){

       //程序在10分钟内未被系统关闭或者强制关闭,则程序会调用此代码块,可以在这里做一些保存或者清理工作

        NSLog(
@"程序关闭"
);

    }];

}

添加此段代码后,程序进入后台10分钟内会响应 applicationWillTerminate 函数,可以在其中添加保存或者清理工作。

你可能感兴趣的:(iOS 系统,关闭程序,applicationWillTerminate为调用问题解决)