屏幕锁定时的NSTimer

时间:2014-07-31 17:39:22

标签: ios background nstimer

在iOS 8中锁定屏幕后如何保持NSTimer持续存在?每次我锁定屏幕都会停止。我试过将它放在NSRunLoop中,但没有运气。

1 个答案:

答案 0 :(得分:1)

当应用程序背景化时,iOS总是暂停NSTimers。您可以使用UIApplication beginBackgroundTaskWithExpirationHandler:请求一些额外的背景时间,但请注意,它不会让您的计时器永远不变。您最好的办法是记住applicationWillResignActive后退的时间,然后检查您在applicationDidBecomeActiveapplicationWillEnterForeground中重新激活的当前时间。然后,您可以计算应用程序处于非活动状态时所经过的时间,并执行适当的操作。

请参阅此处的UIApplication文档https://developer.apple.com/library/ios/documentation/uikit/reference/UIApplication_Class/Reference/Reference.html,特别是"管理后台执行"

相关问题