我有一个文件网址,想要在我的iPhone文件目录中下载。这样我就可以在其他应用程序中使用这个下载的文件,比如在whatsApp上,在电子邮件附件中共享它等。
我正在使用ASIHTTPRequest,我应该设置哪条目标路径?
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:self.ImageURL];
[request setDownloadDestinationPath:@"What Path I should Set"];
[request startSynchronous];
以下是我要下载的文件的示例网址: http://www.fourspan.com/apps/agentreview/public/img/ads/1441791507_Muhammad.jpg
答案 0 :(得分:0)
首先,ASIHTTPRequest
已过时,请避免使用它。
以下是使用AFNetworking
下载任何文件并将其保存到您想要的任何位置的代码( savePath )
#define kDocumentsDirPath [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]
- (void)downloadFile:(NSString *)filePath
{
AFURLSessionManager *sessionManager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:filePath]];
NSURLSessionDownloadTask *downloadTask = [sessionManager downloadTaskWithRequest:request
progress:nil
destination:^NSURL *(NSURL *targetPath, NSURLResponse *response) {
NSString *savePath = [kDocumentsDirPath stringByAppendingPathComponent:fileName];
return [NSURL fileURLWithPath:savePath];
}
completionHandler:^(NSURLResponse *response, NSURL *filePath, NSError *error) {
if (error)
{
NSLog(@"Download failed for %@: %@", fileName, error.localizedDescription);
[[[UIAlertView alloc] initWithTitle:[NSString stringWithFormat:@"Failed to download %@", fileName]
message:error.localizedDescription
delegate:nil
cancelButtonTitle:@"Uh Oh"
otherButtonTitles:nil] show];
}
else {
NSLog(@"File downloaded: %@", fileName);
}
}];
[downloadTask resume];
}