当应用程序终止时,我在数据库上写入数据。
从iOS 4开始,applicationWillTerminate:未被调用,我在applicationDidEnterBackground:和applicationWillTerminate中都添加了相同的保存代码:
我读到applicationDidEnterBackground中执行的任务:需要花费一些时间。
所以,如果db上的写作需要更多,我该怎么办呢?
答案 0 :(得分:4)
您可以在applicationDidEnterBackground:方法中执行任何保存等5秒钟。
如果您需要超过5秒,则需要使用此UIApplication方法来请求后台线程,以便有更多时间做您需要的任何事情:
- (UIBackgroundTaskIdentifier)beginBackgroundTaskWithExpirationHandler:(void(^)(void))handler
以下是Apple的示例代码: