您好,欢迎来到菜鸟吧源码网-本站资源仅供学习与参考,禁止用于商业或违法行为!
  • 首 页
  • 下载APP
  • 公告:菜鸟吧APP于2024.9.15正式上线,请首页右上角进入下载,本站资源均来源于互联网及会员投稿发布,所有资源仅供学习参考研究使用,请勿商用或其它非法用途,商用请购买正版,否则产生一切后果由用户自行承担!谢谢!

     

    当前位置:主页 > 视频教程 > 建站优化 >
    [造轮子系列]自己动手写多任务多线程断点下载框架

    [★★★资源简介★★★]

    多任务下载框架,是一个封装了下载功能的工具,它支持下载队列,对外提供下载进度更新,暂停||恢复||取消下载等功能。该框架适用于一切需要多任务下载的地方。例如app市场的app下载,视频app的视频下载,网易云阅读的离线下载等等。

    如何将不同的下载场景抽取出一个普适的工具,这是Stay要着重花时间来讲的,毕竟每个App的下载需求都不一样,如何解耦,如何扩展,这些都是使用开源框架无法体会的。通过从0到1的架构过程,希望能让大家学会举一反三,以后再也不用去发愁有了bug不会改,有了新需求不会扩展。
    我们会在多任务下载中会碰到很多坑,我们先来预热下。

    比如说:
    1. 下载的进度与状态如何notify给所有的activity,单一的callback已经不能满足这样的需求了
    2. 由于使用多个线程去下载同一个文件,涉及到的进度更新等这些并发操作如何处理,并不是简单的加上synchronized就搞定了的
    3. 当应用被强杀后,我们的下载数据应该如何处理,是否能再恢复断点下载?
    4. 下载之前的预处理:是否支持断点续传,文件长度是否能获取,它们都对应着不同的下载策略

    这些坑,只有掉进去过才知道如何爬出来,如果只想着去用开源框架,再掉坑里那就麻烦了,一是可能不会改,二是本身框架的限制,改了会破坏耦合。

    相信我,没有任何一个开源框架能满足你所有的需求,总是要改的,Stay的也不例外,但我们讲的是框架是如何从无到有写出来的,而不是拿一个完整的框架来分析。一旦你知道如何写,你就明白耦合是怎么一回事,在哪些节点可以再加哪些扩展与优化。

    框架永远都不可能变得完美,它是基于当前项目环境下的最优产物,所以Stay不可能教会你所有的功能知识点,但是会把这种解决问题的能力传递给你,不思考不实践是学不会的,但只要你掌握了这种能力,不管是本框架还是其他任何需求,你都能轻松应对。

    另外,在课程中也穿插了真实的开发流程:需求分析-产品设计-架构-测试-实现,Stay希望通过本课程能培养大家正确的开发方式,让自己更高效。

    既然是框架课程,已经脱离了单纯的API调用,其高度抽象与伸缩性不是那么容易就能理解,希望同学们能耐心的学习,花时间去实践,磨刀不误砍柴工,只要有所领悟,它给你带来的不仅仅高效开发这么简单。

    课程目录:

    第1章课程重制V3版(更新完毕)
    第2章大不一样(AS+GIT+MVC+互动)
    1你要的多任务下载是这样的吗(免费课时)可试听整节00:13:37
    2在写代码之前,我们该做些什么(免费课时)可试听整节00:08:33
    第3章基础框架搭建
    1需求分析,技术点调研(免费课时)可试听整节00:13:59
    2伪代码+TODO串联一切(免费课时)可试听整节00:15:23
    3完善并验证完整业务流程(免费课时)可试听整节00:15:13
    第4章完善主结构
    1单个任务的下载|暂停|取消|恢复00:12:14
    2多任务的下载|暂停|取消|恢复00:14:48
    3限制同时下载的最大任务数00:16:05
    4小结以及实现任务全部暂停00:15:00
    5实现全部任务恢复下载以及优化00:14:42
    6添加数据库逻辑,防止App被强杀后的数据丢失00:16:51
    第5章下载核心实现
    1预处理:判断是否支持断点续传,以及文件大小00:11:19
    2多线程单文件下载实现00:14:52
    3暂停|恢复逻辑整理00:10:26
    4取消下载并优化00:14:49
    5下载流程梳理(免费课时)可试听整节00:10:21
    6当某条线程下载异常时的处理00:12:33
    7不支持断点续传时使用单线程下载00:12:41
    8无法预取文件长度时的下载操作00:10:41
    第6章多线程编程的那些坑
    1Handler与线程的那些坑00:12:29
    2多种方式解决多线程并发造成的数据脏读(上)00:13:01
    3多种方式解决多线程并发造成的数据脏读(下)00:16:18
    第7章优化|测试
    1将hard code参数改为可配置的00:14:03
    2多任务下载简单测试(附bug fix)00:07:10
    3模拟应用市场下载流程并优化00:14:47
    4剩余细节的需求分析和解决方案00:12:16
    第8章暂时告一段落
    1小结:写代码之前必看00:09:22

    [★★★资源下载★★★]

    暂无演示
  • 点击下载
  •  —下载需要"0"金币— 注意:当账号有足够金币时 点击下载按钮自动扣除。 充值金币升级VIP

    上一篇:高级架构师-Heartbeat高可用服务视频教程

    下一篇:[造轮子系列] 自己动手写HTTP框架

    郑重声明:
    本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
    我们不承担任何技术及版权问题,且不对任何资源负法律责任。
    如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。
    如有侵犯您的版权,请给我们来信:cainiaovip8@qq.com,我们会尽快处理,并诚恳的向你道歉!

    本站不免费提供咨询,技术支持和安装服务如果需要服务请点击这里游戏棋牌类源码不提供搭建