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
、デリゲート メソッドが呼び出されます。
私が欠けているものを理解するのを手伝ってください。
ありがとう、ニティン