iOS App 运行 后台任务时间
iOS App running background task time
所以我正在我的应用程序中执行后台任务,它是这样启动的:
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
总是 returns 1.79769313486232e+308
。这应该只在应用程序处于活动状态时发生。但是这个函数只有当应用程序在后台运行时才会被调用,第一个日志语句证实了这一点。
我还尝试在 5 秒后发送日志语句并断开设备与 Xcode 的连接(正如另一个 SO post 上有人建议的那样),但没有成功。
事实证明,这是 iOS 9.1 中的错误,自 9.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
总是 returns 1.79769313486232e+308
。这应该只在应用程序处于活动状态时发生。但是这个函数只有当应用程序在后台运行时才会被调用,第一个日志语句证实了这一点。
我还尝试在 5 秒后发送日志语句并断开设备与 Xcode 的连接(正如另一个 SO post 上有人建议的那样),但没有成功。
事实证明,这是 iOS 9.1 中的错误,自 9.2 以来已修复。 如果您仍然遇到此问题,请确保您的应用确实在后台 运行:)