Session下载任务
【无下载过程】
NSString *path = @"";
NSURL *url = [NSURL URLWithString:path];
NSURLSession *session = [NSURLSession sharedSession];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
NSURLSessionDownloadTask *task = [session downloadTaskWithRequest:request completionHandler:^(NSURL * _Nullable location, NSURLResponse * _Nullable response, NSError * _Nullable error) {
NSFileManager *fm = [NSFileManager defaultManager];
[fm moveItemAtURL:location toURL:[NSURL fileURLWithPath:@"/Users/nil/Desktop/SONG.mp3"] error:nil];
}];
[task resume];
【有下载过程】
NSString *path = @“ ”;
NSURL *url = [NSURL URLWithString:path];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:config delegate:self delegateQueue:[NSOperationQueue mainQueue]];
NSURLSessionDownloadTask *task = [session downloadTaskWithRequest:request];
[task resume];
-(void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask didWriteData:(int64_t)bytesWritten totalBytesWritten:(int64_t)totalBytesWritten totalBytesExpectedToWrite:(int64_t)totalBytesExpectedToWrite{
//每部分大小、总大小、当前已下载大小
NSLog(@"%lld---%lld---%lld",bytesWritten,totalBytesExpectedToWrite,totalBytesWritten);
self.myPV.progress = totalBytesWritten*1.0/totalBytesExpectedToWrite;
}
- (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask
didFinishDownloadingToURL:(NSURL *)location{
NSFileManager *fm = [NSFileManager defaultManager];
[fm moveItemAtURL:location toURL:[NSURL fileURLWithPath:@"/Users/nil/Desktop/haha.mp3"] error:nil];
}