iOS开发 - 第04篇 - 网络 - 03 - 数据安全 & 文件下载

1、数据安全








2、MD5加密


调用NSString+Hash分类中的方法




3、加密过程






4、数据安全小结




5、网络状态监控






6、文件下载 --- 重要


6.1 小文件下载


下载小文件的方式:

1> NSDatadataWithContentsOfURL

2> NSURLConnection




注:以上两种方式只适用于小文件下载,原因:

1. 不能显示文件下载进度,大文件必须显示下载进度,否则用户体验差

2. 返回的数据以NSData存放在内存中,若文件很大,直接导致内存警告或者死机


6.2 大文件下载


1> 基本下载








2>显示下载进度

注:进度条可采用第三方框架代替




注:上述方法还是将所有数据放在NSMutableData中,等待下载结束后,存放到缓存中,太占内存


3>NSFileHandle优化内存

思路:每次接收到数据后,直接写入沙盒中,而不是存放到NSMutableData中累积,使得内存中的数据永远是每次接收到的数据大小




6.3 大文件下载思路






注意点:千万不能用NSMutableData来拼接服务器返回的数据


7、NSURLConnection的异步请求小结




8、大文件断点下载 ---  重要








注:在接收下载响应后增加判断,防止又是重新下载


9、NSURLSession --- 重要


iOS7推出,目的是为了取代NSURLConnection


9.1 GET请求




9.2 POST请求




9.3 下载




注:NSURLSessionDownloadTask默认进行内存优化,即以边下载边写沙盒的方式进行,写到tmp目录下,若下载完成后不处理,则立即删除,因此需要在下载完成后后,将文件移到caches目录下


9.4 下载进度






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值