2014-11-01 49 views
0

爲什麼我的應用程序在長時間運行的後臺任務完成後沒有立即掛起?長時間運行的後臺任務完成後,應用程序不會掛起

在iOS 8上運行的應用程序使用長時間運行的後臺任務以避免在進入後臺時掛起。 一切都很好。當任務完成後,應用程序調用後臺任務完成處理:

 [[UIApplication sharedApplication] endBackgroundTask:backgroundTask]; 
     backgroundTask = UIBackgroundTaskInvalid; 

然而,backgroundTimeRemaining一個調用返回40秒的時間間隔。

[[UIApplication sharedApplication] backgroundTimeRemaining] 

事實上,應用程序在結束任務後至少還有20秒沒有掛起。

  • 這是怎麼發生的?
  • 該應用程序是否總是收到完整的執行時間?
  • 我可以加快應用程序的暫停嗎?

回答

0

在進一步調試之後,很明顯backgroundTimeRemaining在任務完成後沒有立即更新。之後不久,應用程序可能會在運行循環之後暫停。你不應該期望backgroundTimeRemaining在任何時候都是準確的。

相關問題