2017-10-30 24 views
0

앱이 백그라운드에 있는지, 그리고 메인 스레드가 아닌 것에서 backgroundTimeRemaining인지 확인해야합니다. - 분명히 이것은 경고를 던지지 않고 더 이상 허용되지 않습니다. 나는 레이더를 신청했지만 애플은 의도대로 작동한다고 말했다.`[[UIApplication sharedApplication] applicationState]`를 Xcode 9에 경고하지 않고 백그라운드 스레드에서 검사 하시겠습니까?

메인 스레드가 아닌 경우 이러한 속성을 어떻게 확인합니까? 이 경고를 표시하지 않는 다른 변수에 캐시 하시겠습니까? 어리석은 것 같습니다 ...

답변

-1

실제로 해결책은 dispatch_get_main_queue 블록에서 backgroundTimeRemaining을 확인하거나 임시 변수에 값을 저장하는 것입니다.

dispatch_async(dispatch_get_main_queue(), ^{ 
    double bgTime = [UIApplication sharedApplication].backgroundTimeRemaining; 
});