开发者社区> goodboy_heyang> 正文

iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载

简介:
+关注继续查看

前言:iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载是在前篇iOS开发之网络编程--使用NSURLConnection实现大文件下载的基础上进行

     断点续传的设置。关于iOS开发之网络编程--使用NSURLConnection实现大文件下载的细节这里当然就不会再累述的啦。

 

断点续传的原理

     每次在向服务器请求下载数据的同时,要告诉服务器从整个下载文件的数据流的某个还未下载的位置开始下载,然后服务器就返回从那个位置开始的数据流。

     图片示意图:

    

   断点续传关键代码示意图:

    

用来做代码练习的API接口

MP4小视频:http://120.25.226.186:32812/resources/videos/minion_01.mp4

 

代码实现(下面的源码是在iOS开发之网络编程--使用NSURLConnection实现大文件下载的基础上进一步实现断线续传)

      1、实现下载和停止下载,所以需要添加两个按钮,然后拖线连接什么的,你懂的。

    

    2、关键完整代码:

      

关于使用NSURLConnection实现大文件断点续传下载的补充:

  在本人的iOS开发之网络编程--小文件下载的随笔博文中就提到的响应头对象的属性

    response.expectedContentLength返回的并不是下载整个文件的长度,而是将要下载的文件的长度

  举个实际中常有的例子:当我下载到1/3的长度然后取消下载了,之后再次点击开始下载,这时候response.expectedContentLength返回的会是剩下2/3的长度。

  所以在使用response.expectedContentLength注意不要因为不知其本质而使用错了。

  以上源码中:

    

转载请注明出处:iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载,尊重劳动成果。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
iMazing官网下载安装教程 2023最新版兼容Win和Mac的iOS设备管理软件
iMazing是一款功能强大的iOS设备管理软件,它可以帮助用户备份和管理他们的iPhone、iPad或iPod Touch上的数据。除此之外,它还可以将备份数据转移到新的设备中、管理应用程序、导入和导出媒体文件等。本文将详细介绍iMazing的功能和安全性,并教大家如何使用iMazing来恢复备份数据。
42 0
macOS Big Sur 正式发布并已开放下载,支持原生运行 iOS 和 iPadOS App
macOS Big Sur 正式发布并已开放下载,支持原生运行 iOS 和 iPadOS App
40 0
阿里云无影云桌面客户端下载Win/Mac/iOS/安卓/Web端均支持
阿里云无影客户端下载系统Win/Mac/iOS/安卓/Web端均支持
567 0
WIN11自定义版本ios镜像下载教程
WIN11自定义版本ios镜像下载教程
221 0
关于ios低版本在app store下载软件时由于版本低导致不能下载的解决办法
关于ios低版本在app store下载软件时由于版本低导致不能下载的解决办法
212 0
iOS上架app store下载步骤
iOS上架app store下载步骤
36 0
如何下载和安装 iOS开发教程
如何下载和安装 iOS开发教程
55 0
IOS下载资源zip到本地然后读取
IOS下载资源zip到本地然后读取
84 0
超好用iOS管软件iMazing 2.16.6官网下载及2023新增功能
iMazing 2.16.6这是一款非常方便的 iPhone 管理工具,尤其是在升级、降级、越狱之前,做好备份是必不可少的一步,千万别偷懒。有一款用着顺手的iOS管理工具在手边,让数字生活更安心!
151 0
阿里云无影客户端下载Windows/Mac/iOS/安卓/Web端操作系统均支持
阿里云无影云桌面客户端下载,无影客户端支持操作系统包括Windows、Mac、Web网页端、iOS客户端和安卓客户端
914 0
imazing官网下载最新版iOS管理工具介绍
iMazing这是一款非常方便的 iPhone 管理工具,尤其是在升级、降级、越狱之前,做好备份是必不可少的一步,千万别偷懒。有一款用着顺手的iOS管理工具在手边,让数字生活更安心!
133 0
iOS - 跳转App Store下载 app 的两种方式
iOS - 跳转App Store下载 app 的两种方式
1541 0
开放下载!《iOS开发者必读资讯》
对于开发者和程序员来说,对 WWDC 20 我们有哪些新发现和新思考?淘系技术客户端团队将从Swift语言、metal的变化、中间件相关的-网络技术相关、隐私适配等各个话题,来系统输出我们的关注点和看法。
7918 0
iOS NSURLSession DownloadTask(下载任务)
1. 不需要获取文件下载进度的方法 // 此方法无法获取到文件的下载进度,只能在结束时做响应 - (void)download { NSURL *url = [NSURL URLWithString:@"http://127.
1005 0
+关注
goodboy_heyang
文章
问答
视频
相关电子书
更多
深入剖析iOS性能优化
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载