AFNetWorking下载视频文件

来源:互联网 发布:安卓全球电视直播软件 编辑:程序博客网 时间:2024/05/21 01:31

本文简单介绍利用AFNetWorking下载网络上的视频文件,并且存储到iOS的沙盒中。下载其他类型文件同理,直接上代码。

获取沙盒中的Documents地址的代码。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);NSString *documentsDirectory = [paths objectAtIndex:0];

假设视频文件的网络url为http://www.abc.com/test.mp4,下载到iOS沙盒中的文件名为test.mp4。

利用如下代码便可实现视频文件的下载和存储, 注意在生成网络url的时候使用NSURL的类方法URLWithString,这样才可以请求网络url,使用fileURLWithPath用来访问本地文件。这是我遇到的一个不大不小的坑,浪费了不少时间。

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];NSString  *fullPath = [NSString stringWithFormat:@"%@/%@", documentsDirectory, @"test.mp4"];NSURL *url = [NSURL URLWithString:@"http://www.abc.com/test.mp4"];NSURLRequest *request = [NSURLRequest requestWithURL:url];NSURLSessionDownloadTask *task =[manager downloadTaskWithRequest:request                        progress:nil destination:^NSURL *(NSURL *targetPath, NSURLResponse *response) {                            return [NSURL fileURLWithPath:fullPath];                        }               completionHandler:^(NSURLResponse *response, NSURL *filePath, NSError *error) {               }];[task resume];
0 0
原创粉丝点击