使用NSURLSessionDownloadTask下载大文件,默认下载位置为temp临时文件,下载好就会被删除,所以下载完成以后我们要把文件移动到caches文件夹
//创建session
NSURLSession *session = [NSURLSession sharedSession];
//创建URL
NSURL *url = [NSURL URLWithString:@"http://localhost:8080/TFServer/resources/videos/minion_01.mp4"];
//创建request
NSURLRequest *request = [NSURLRequest requestWithURL:url];
//创建任务
NSURLSessionDownloadTask *task = [session downloadTaskWithRequest:request completionHandler:^(NSURL *location, NSURLResponse *response, NSError *error) {
//找到沙盒caches的路径
NSString *caches = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
//找到文件路径
NSString *file = [caches stringByAppendingPathComponent:response.suggestedFilename];
//拿到文件管理器
NSFileManager *mgr = [NSFileManager defaultManager];
//执行移动操作
[mgr moveItemAtPath:location.path toPath:file error:nil];
}];
//开始任务
[task resume];
本文介绍如何使用NSURLSessionDownloadTask下载大文件,并将下载好的文件从临时目录移动到caches目录中保存。通过NSURLSession创建下载任务,并在下载完成后利用NSFileManager进行文件移动。
&spm=1001.2101.3001.5002&articleId=46491379&d=1&t=3&u=ec833a6e39e54f9aae2d7018793124cb)
1357

被折叠的 条评论
为什么被折叠?



