我的应用程序需要从用户手机上传视频文件,然后在服务器上进行处理。问题是文件的大小可以达到 200 MB 以上,并且用户不会让应用程序保持打开状态等待文件上传。由于苹果不允许应用程序在后台运行超过有限的时间。如何确保我的文件已上传。我正在使用 afnetworking 来设置 ios 7 库给出的上传任务。
请如果有人能指出我正确的方向或有任何解决方案,将不胜感激。我在这个问题上敲了太久。谢谢。
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration];
[manager setTaskDidSendBodyDataBlock:^(NSURLSession *session,NSURLSessionTask *task ,int64_t bytesSent, int64_t totalBytesSent,int64_t totalBytesExpectedToSend){
CGFloat progress = ((CGFloat)totalBytesSent / (CGFloat)sensize);
NSLog(@"Uploading files %lld -- > %lld",totalBytesSent,totalBytesExpectedToSend);
[self.delegate showingProgress:progress forIndex:ind];
}];
dataTask = [manager uploadTaskWithStreamedRequest:request progress:nil completionHandler:^(NSURLResponse *response, id responseObject, NSError *error) {
if (error) {
NSLog(@"Error: %@", error);
} else {
}
}];
我的请求是一个普通的多部分表单请求。