I have an NSURLSessionDownloadTask with backgroundSessionConfigurationWithIdentifier . When I lock the screen, this exception occurs:
Domain Error = NSPOSIXErrorDomain Code = 1 "Operation cannot be completed. Operation not allowed.".
This error occurs only on my phone, it does not appear on other phones.
below is a simple code:
NSURLSessionConfiguration *sessionConfiguration = [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:@"com.edu.downLoadTest"];; AFURLSessionManager *_session = [[AFURLSessionManager alloc] initWithSessionConfiguration:sessionConfiguration]; NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://podcasts.apple.com/apple_keynotes_hd/2015/2015_mar_hd_cc.m4v"]]; NSProgress *progress; NSURLSessionDownloadTask *task1 = [_session downloadTaskWithRequest:request progress:&progress destination:^NSURL *(NSURL *targetPath, NSURLResponse *response) { NSString *a =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0]; return [NSURL fileURLWithPath:[a stringByAppendingPathComponent:@"test.m4v"]]; } completionHandler:^(NSURLResponse *response, NSURL *filePath, NSError *error) { NSLog(@"%@",error); }]; [task1 resume];
source share