Amazon S3 サーバーから iPad に 5 つ以上のビデオ ファイルをダウンロードしたいと考えています。
5ファイルまでは問題なく動作します。しかし、ダウンロードするファイルが 7 つある場合、最後の 2 つのファイルで「要求がタイムアウトしました」と表示されます。
これが私のコードです:
NSMutableURLRequest* rq = [[APIClient sharedClient] requestWithMethod:@"GET" path:[[self item] downloadUrl] parameters:nil];
downloadOperation = [[AFHTTPRequestOperation alloc] initWithRequest:rq] ;
downloadOperation.outputStream = [NSOutputStream outputStreamToFileAtPath:[[self item] localUrl] append:NO];
[downloadOperation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"Successfully downloaded file to %@", [[self item] localUrl]);
isDownloading = NO;
[self.downloadProgressView setHidden:YES];
[self setUserInteractionEnabled:YES];
[self.downloadIndicatorView stopAnimating];
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
[self.downloadProgressView setHidden:YES];
[self setUserInteractionEnabled:YES];
[self.downloadIndicatorView stopAnimating];
isDownloading = NO;
[[[UIAlertView alloc] initWithTitle:@"Hata"
message:@"Bir hata oluştu. Lütfen tekrar deneyiniz."
delegate:self
cancelButtonTitle:@"Tamam"
otherButtonTitles:nil] show];
}];
[downloadOperation setDownloadProgressBlock:^(NSUInteger bytesRead, long long totalBytesRead, long long totalBytesExpectedToRead) {
float progress = totalBytesRead / (float)totalBytesExpectedToRead;
//NSLog(@"Download Percentage: %f %%", progress*100);
[self.downloadProgressView setProgress:progress animated:YES];
}];
[downloadOperation setShouldExecuteAsBackgroundTaskWithExpirationHandler:^{
}];
[SharedAppDelegate.httpClient enqueueHTTPRequestOperation:downloadOperation];
[downloadOperation start];
isDownloading = YES;
[self.downloadProgressView setHidden:NO];
[self.downloadIndicatorView startAnimating];
なにが問題ですか?