4
正在做一個NSURLSessionDelegate控制器中的後臺URLSession的IOS9應用程序。下面是我如何開始它:URLSession didCompleteWithError無錯誤
self.session_data = [[NSMutableData alloc] init];
NSURL *url = [NSURL URLWithString:src];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
NSURLSessionConfiguration *backgroundConfigObject = [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier: @"myBackgroundSessionIdentifier"];
self.session = [NSURLSession sessionWithConfiguration: backgroundConfigObject delegate: self delegateQueue: [NSOperationQueue mainQueue]];
self.download = [self.session dataTaskWithRequest: request ];
[self.download resume];
到目前爲止好。我實施了三種委託方法。 'didReceiveData'首先被調用並且我存儲數據。
- (void)URLSession:(NSURLSession *)session
dataTask:(NSURLSessionDataTask *)dataTask
didReceiveData:(NSData *)data{
NSLog(@"%s",__func__);
[self.session_data appendData:data];
}
之後,'didCompleteWithError'被調用。 'completionHandler'處理程序永遠不會被調用。
什麼令人困惑的'didCompleteWithError'消息是,實際的錯誤對象是零。我看到了一些類似的未解答的問題。加載時,我不會離開控制器/視圖。我是否需要將該功能移入AppDelegate?
有你的.plist設置NSTransport安全? –
那確實解決了它 –