使用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];