首页 > 代码库 > OC第三方框架-AFN的使用
OC第三方框架-AFN的使用
OC第三方框架-AFN的使用
//// ViewController.m// AFN断点续传演练//// Created by apple on 13-7-30.// Copyright (c) 2013年 Jackie. All rights reserved.//#import "ViewController.h"#import "AFNetworking.h"#import "SSZipArchive.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad{ [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib.}- (void)didReceiveMemoryWarning{ [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}#pragma mark - 下载文件- (IBAction)downloadFiles:(id)sender{ // 1. 指定下载文件地址 NSURL *url = [NSURL URLWithString:@"http://169.254.98.245/~apple/itcast/download/iTunesConnect_DeveloperGuide_CN.zip"]; // 2. 指定文件保存路径 NSArray *documents = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *downloadPath = [documents[0]stringByAppendingPathComponent:@"book.zip"]; // 3. 创建NSURLRequest NSURLRequest *request = [NSURLRequest requestWithURL:url]; // 4. 创建AFURLConnectionOperation AFURLConnectionOperation *operation = [[AFHTTPRequestOperation alloc]initWithRequest:request]; // 5. 设置操作的输出流(在网络中的数据是以流的方式传输的,告诉操作把文件保存在第2步设置的路径中) [operation setOutputStream:[NSOutputStream outputStreamToFileAtPath:downloadPath append:NO]]; // 6. 设置下载进程处理块代码 // 6.1 bytesRead 读取的字节——这一次下载的字节数 // 6.2 totalBytesRead 读取的总字节——已经下载完的 // 6.3 totalBytesExpectedToRead 希望读取的总字节——就是文件的总大小 [operation setDownloadProgressBlock:^(NSUInteger bytesRead, long long totalBytesRead, long long totalBytesExpectedToRead) { // 做下载进度百分比的工作 NSLog(@"下载百分比:%f", (float)totalBytesRead / totalBytesExpectedToRead); }]; // 7. 操作完成块代码 [operation setCompletionBlock:^{ // 解压缩的顺序 // 1. 定义要解压缩的文件 —— downloadPath // 2. 要解压缩的目标目录 // 3. 调用类方法解压缩 [SSZipArchive unzipFileAtPath:downloadPath toDestination:documents[0]]; // 删除压缩包 [[NSFileManager defaultManager]removeItemAtPath:downloadPath error:nil]; }]; // 8 启动操作 [operation start];}@end
OC第三方框架-AFN的使用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。