当应用程序状态为后台时,为什么UIApplication的backgroundTimeRemaining值为DBL_MAX?

时间:2016-04-06 02:16:07

标签: ios objective-c cocoapods

我正在查看下面代码段生成的日志消息。 Flog是一个#define,用于调用内部日志记录类。

代码来自我项目中包含的Pod中的源文件。我不知道这是否重要。

我对此消息感到困惑,因为在执行日志语句之前将应用程序状态与UIApplicationStateBackground进行比较。

我在这里缺少什么?

[16年4月5日18时31分21秒]背景剩余时间(在didVisit法):179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.00秒...

    __block UIBackgroundTaskIdentifier backgroundTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
        [[UIApplication sharedApplication] endBackgroundTask:backgroundTask];
        backgroundTask = UIBackgroundTaskInvalid;
    }];

    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
        if ([UIApplication sharedApplication].applicationState == UIApplicationStateBackground) {
            FLog(@"Background time remaining (in didVisit method): %.2f seconds...", [UIApplication sharedApplication].backgroundTimeRemaining);
        }

1 个答案:

答案 0 :(得分:0)

这就是https://stackoverflow.com/a/18256062/3900270

的原因

连接Xcode的调试器时无法正常工作