我正在开发一款iOS应用程序。我想知道如果应用程序被强制退出,我的代码会发生什么。当前代码是在应用程序终止前执行的,还是会立即停止?我是否需要让我的应用程序足够强大,无论何时用户强制退出应用程序,它都不会在未来崩溃?
UIApplicationDelegate方法applicationWillTerminate(_:)
将被调用,这使您有机会运行代码。
从应用程序WillTerminate(_:(-UIApplicationDelegate文档:
此方法使您的应用程序知道它将被终止并从内存中完全清除。您应该使用此方法为应用程序执行任何最终清理任务,例如释放共享资源、保存用户数据和使计时器无效此方法的实现大约有五秒钟的时间来执行任何任务并返回。如果该方法在时间到期之前没有返回,系统可能会完全终止该过程。
您的应用程序在被清除之前有机会保存/清理,并且您的方法在操作系统终止进程之前有五秒钟的时间运行。