NSURLSessionUploadTask не вызывает метод делегата с NSURLSessionConfiguration backgroundSessionConfiguration

Я пытаюсь загрузить изображение с помощью backgroundSessionConfiguration а также NSURLSessionUploadTask сохранить живой процесс загрузки в фоновом режиме приложения.

Но когда я использую backgroundSessionConfiguration, NSURLSessionUploadTask не вызывает метод делегата при использовании defaultSessionConfiguration это вызывает метод делегата.

Вот код

//Create a file to upload
    UIImage *image = [UIImage imageNamed:@"1.jpg"];
    NSData *imageData = UIImagePNGRepresentation(image);
    NSFileManager *fileManager = [NSFileManager defaultManager];
    NSArray *URLs = [fileManager URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask];
    NSString *documentsDirectory = [[URLs objectAtIndex:0] absoluteString];

NSString *filePath = [documentsDirectory stringByAppendingString:@"testfile.jpg"];
[imageData writeToFile:filePath atomically:YES];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:@"https://file.upload/destination"]];
[request setHTTPMethod:@"PUT"];

NSURLSessionConfiguration *config = [NSURLSessionConfiguration backgroundSessionConfiguration: [NSString stringWithFormat:@"testSession.foo.com"]];
config.HTTPMaximumConnectionsPerHost = 1;
session = [NSURLSession sessionWithConfiguration:config delegate:self delegateQueue:nil];


NSURLSessionUploadTask *uploadTask = [self.session uploadTaskWithRequest:request fromFile:[NSURL URLWithString:filePath]];
[uploadTask resume];
NSLog(@"==%ld",uploadTask.state);

если я изменюсь backgroundSessionConfiguration в defaultSessionConfigurationметод делегата будет вызываться.

Пожалуйста, помогите мне понять, чего мне не хватает.

Спасибо нитин

0 ответов

Другие вопросы по тегам