2016-04-06 3 views
2

Ich schaue auf eine Protokollnachricht, die durch den Codeschnipsel unten generiert wird. Flog ist ein #define für einen Aufruf einer internen Protokollierungsklasse.Warum ist der backgroundTimeRemaining-Wert von UIApplication DBL_MAX, wenn der Anwendungsstatus im Hintergrund ist?

Der Code stammt aus einer Quelldatei in einem Pod, die in meinem Projekt enthalten ist. Ich weiß nicht, ob das wichtig ist oder nicht.

Ich bin von der Nachricht verblüfft, da der Anwendungszustand mit UIApplicationStateBackground verglichen wird, bevor die Protokollanweisung ausgeführt wird.

Was fehlt mir hier?

[04/05/16 18.31.21] Hintergrund Zeit (in didVisit Methode) verbleibenden: 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368,00 Sekunden ...

__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

Haben Sie eine Lösung gefunden? Ich habe ein ähnliches Problem? – Sree

Antwort

Verwandte Themen