2014-10-24 2 views
0

모두,백그라운드에서 IOS 7 백그라운드 데이터 전송이 시작됨 가져 오기, 30 초 월 클럭은 어떻게 계산됩니까?

나는 잠시 수색 그리고 내가 다음과 같은 질문에 답을 얻을 수 없었다 나타납니다

- (무효) 응용 프로그램 : (UIApplication *) 응용 프로그램의 performFetchWithCompletionHandler : (무효 (^) (UIBackgroundFetchResult)) {fetchCompletionHandler .....

NSURLSessionConfiguration 설정 * = [NSURLSessionConfiguration backgroundSessionConfiguration @ "10-MIN COREDATA-UPDATE"]; config.timeoutIntervalForRequest = 150.0; config.timeoutIntervalForResource = 2500.0;

NSURLSession * session=[NSURLSession sessionWithConfiguration:config delegate:nil delegateQueue: nil ]; 
NSURLSessionDownloadTask *bgDownloadTask=[session downloadTaskWithURL:MyURL completionHandler:^(NSURL *location, NSURLResponse *response, NSError *error) { 
    // use the downloaded file to update a coredata big table 
    [self processFileAndUpdateCoreData]; // this may take long time 
}] ; 

[bgDownloadTask resume]; 

..... }

내가 가져 오기 배경을 알고 30 초 벽 시계를 가지고 있지만 배경 데이터 전송 (NSURLSession)을 읽는 매우 큰 파일을 다운로드 할 수 있습니다 및 배경에는 시간 제한이 없습니다 모드에서 두 가지 "백그라운드"모드를 하나의 호출로 결합하면 30 초의 벽시계는 어떻게 계산됩니까? NSURLsession 다운로드 (다운로드 및 처리 시간이 오래 걸림)를 호출하기 전에 30 초 이내에 코드가 끝났다고 가정 해 보겠습니다. 30 초 이내에 백그라운드 콜을 불러 오거나 할당 된 30 초 백그라운드 콜 제한을 과용했습니다. 다른 방법으로, 여기서 시간을 어떻게 계산합니까? NSURL 세션 시간을 제외해야합니까? 아니면 백그라운드 가져 오기 호출에 대한 총 시간이 포함되어야합니까?

모든 제안과 조언을 부탁드립니다.

은}

답변

0

내가 여러 번 시도하고 나는 큰 핵심 데이터 스키마를 업데이트 새로 다운로드 한 파일을 사용하는 응용 프로그램은 항상에 대한 살해됩니다 NSURL 세션 위임의 응용 프로그램 배경 새로 고침 호출 배경 NSURL 세션을 출시 90 초. 따라서 대답은 : 당신이 무엇을하던간에 30 초의 벽시계가 적용됩니다.