Мое приложение требует загрузки видеофайлов с телефона пользователя, который затем будет обрабатываться на сервере. Проблема заключается в том, что размер файла может достигать 200 МБ плюс, и пользователь не будет держать приложение открытым, чтобы дождаться загрузки файла. Поскольку apple не позволяет приложениям работать в фоновом режиме в течение более чем ограниченного времени. Как я могу обеспечить загрузку моих файлов. Я использую afnetworking для настройки задачи загрузки, указанной в библиотеке ios 7.Как работать с большими файловыми загрузками в ios?
Пожалуйста, если кто-нибудь может указать мне в правильном направлении или иметь какое-либо решение, было бы весьма полезно. Я слишком долго стучал головой об этом. Благодарю.
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 {
}
}];
Мой запрос является обычным многопрофильным запросом формы.
Я не уверен, что для этого API требуется 'Background fetch'. –