如何在后台杀死应用程序时执行清理?

zou*_*oul 5 temporary-files application-lifecycle ios

我的应用程序在其整个生命周期中创建了一些我需要的临时文件.我最终需要处理这些文件,因此它们不会占用设备上的空间.我想我可以在应用程序退出时删除它们,但是由于引入了多任务处理,因此生命周期并不像以前那么简单.我的主要问题是:当我的应用程序进入后台并在以后被杀时,它会收到applicationWillTerminate:吗?或者只是从记忆中消失了?

当应用程序进入后台时,我无法进行清理,因为它可以在操作过程中进行后台处理,并且一旦它返回到前台就需要临时文件.我想我可以在启动时清理文件,但applicationWillTerminate:无论如何我对这种行为感兴趣.

Ste*_*ton 5

不,applicationWillTerminate:不支持多任务启用的iOS 4设备.当你的应用程序被终止,通常意味着该设备运行内存,所以即使是没有得到所谓没有说,你有足够的可用内存反正完成任务.

Apple建议您在应用程序进入后台时进行清理.如果您需要几秒钟(这是为所有应用程序开放的少数多任务场景之一),您可以请求额外的时间来执行此操作.

您的其他选择是在任务完成时(无论何时)或应用程序启动时进行整理.我想可能还有其他的排列......