iOS App运行后台任务时间

时间:2015-11-24 19:57:41

标签: ios swift background uibackgroundtask

所以我在我的应用中执行了一个后台任务,它的启动方式如下:

private func someFunc() 
{
    backgroundTask = UIApplication.sharedApplication().beginBackgroundTaskWithExpirationHandler({
        // Present a local Notification
    })

    // Present a different local Notification

    DDLogInfo("Is in bg: \(UIApplication.sharedApplication().applicationState == .Background)")
    DDLogInfo("BG-time remaining: \(UIApplication.sharedApplication().backgroundTimeRemaining)")
}

我的问题是backgroundTimeRemaining始终返回1.79769313486232e+308。这应该只在应用程序处于活动状态时发生。但是只有当应用程序在后台运行时才会调用此函数,第一个日志语句会确认这一点。

我还尝试在5秒后调度日志语句并将设备与Xcode断开连接(正如另一个SO帖子中建议的那样),但没有成功。

1 个答案:

答案 0 :(得分:1)

事实证明,这是iOS 9.1中的一个错误,自9.2以来一直在修复。 如果您仍然遇到此问题,请确保您的应用实际上在后台运行:)