2

所以我在我的应用程序中执行一个后台任务,它是这样开始的:

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 帖子中的某人所建议的那样),但没有成功。

4

1 回答 1

1

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

于 2015-12-14T17:08:45.250 回答