我已经设法使用 S3TransferManager 将图像上传到 S3 服务器。现在我正在尝试再次下载图像。但我不断收到此日志消息。我不知道如何解决。似乎文件路径有问题,因此它创建了一个临时文件。
[S3TransferManager filePath:]|531|File created to persist transfer request: /private/var/mobile/Applications/9CD874D1-2605-4067-949C-D373E917B85E/tmp/S3TransferDownloadRequests/000000000-individualframes-20131111T181238Z.plist
这是我正在使用的代码。
- (void) downloadFramesFromURLS:(NSMutableArray *) urls {
for (NSString *string in urls) {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:string];
S3GetObjectRequest *req = [[S3GetObjectRequest alloc] initWithKey:string withBucket:@"individualframes"];
req.targetFilePath = filePath;
req.contentType = @"image/jpeg";
req.delegate = self;
[self.downLoadManager download:req];
}
}
如果我这样做[self.s3 getObject:req];
而不是[self.downLoadManager download:req];
下载工作正常。但我想像使用上传一样使用传输管理器
更新:这是我在委托方法中使用的代码的简化版本。因此,当下载完成后,我想使用下载的数据文件并返回到 UIImage。当我使用传输管理器时,response.body 为零。
- (void) request:(AmazonServiceRequest *)request didCompleteWithResponse:(AmazonServiceResponse *)response {
NSData *data = response.body;
UIImage *img = [UIImage imageWithData:data];
// further processing goes on here
}