注:#import "YGFileDownloader.h"是对NSURLConnection的简单封装
#import "YGResumeDownloadViewController.h"
#import "NSString+util.h"#import "YGFileDownloader.h"
#define URL @"http://dlsw.baidu.com/sw-search-sp/soft/2a/25677/QQ_V4.0.0.1419920162.dmg"
@interface YGResumeDownloadViewController () <YGFileDownloaderDelegate>
@property (weak, nonatomic) IBOutlet UIProgressView *progressView;
@end
@implementation YGResumeDownloadViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
float progress=[defaults floatForKey:@"self.progressView.progress"];
if (progress)
{
self.progressView.progress=[defaults floatForKey:@"self.progressView.progress"];
}
}
- (IBAction)download:(id)sender {
YGFileDownloader *downloader=[YGFileDownloader sharedInstance];
downloader.delegate=self;
[downloader start:URL];
}
- (IBAction)pauseDownload:(id)sender {
[[YGFileDownloader sharedInstance] stop];
}
#pragma mark - <YGFileDownloaderDelegate>
-(void)fileDownloaderFailWithError:(NSError *)error{
NSLog(@"失败");
}
-(void)fileDownloader:(YGFileDownloader *)downloader downloadSize:(unsigned long long)downloadSize totalSize:(unsigned long long)totalSize{
self.progressView.progress=1.0*downloadSize/totalSize;
float p=self.progressView.progress;
//NSLog(@"进度条:%f",p);
NSUserDefaults *dafaults=[NSUserDefaults standardUserDefaults];
[dafaults setFloat:p forKey:@"self.progressView.progress"];
}
-(void)fileDownloaderDidFinishLoad{
NSLog(@"下载完了");
}