为什么我的应用程序在长时间运行的后台任务完成后没有立即暂停?
在iOS 8上运行的应用程序使用长时间运行的后台任务来避免在进入后台时被暂停。 一切都很好。任务完成后,应用程序将调用后台任务完成处理程序:
[[UIApplication sharedApplication] endBackgroundTask:backgroundTask];
backgroundTask = UIBackgroundTaskInvalid;
但是,对backgroundTimeRemaining
的调用会返回40秒的时间间隔。
[[UIApplication sharedApplication] backgroundTimeRemaining]
事实上,在结束任务后,应用程序不会暂停至少20秒。
答案 0 :(得分:0)
在进一步调试之后,很明显在任务完成时不会立即更新backgroundTimeRemaining
。该应用程序很快就会在运行循环旋转后暂停。您不应期望backgroundTimeRemaining
始终准确无误。