[发明专利]一种基于Android的下载管理方法在审
| 申请号: | 202011437043.8 | 申请日: | 2020-12-07 |
| 公开(公告)号: | CN112600913A | 公开(公告)日: | 2021-04-02 |
| 发明(设计)人: | 丁凯;朱卉明 | 申请(专利权)人: | 焦点科技股份有限公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08 |
| 代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 陈建和 |
| 地址: | 210032 江苏省南京*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 android 下载 管理 方法 | ||
一种基于Android的下载管理方法,步骤如下:1)首先app启动下载任务,启动下载任务的时候传递一个优先级变量传递给下载管理模块;2)下载任务首先会将任务放入到下载队列中,将高优先级的排放在队列前段优先处理;将低优先级的排放在队列尾端最后处理。排列规则如下:a)将优先级高的排列在前面;b)将普通优先级排列在高优先级后;c)将低优先级排列在普通优先级后;由优先级变量决定优先级高和优先级低的级别;当多个下载任务一起请求的时候,开启多个线程去同时处理下载任务,并且在下载任务完成后会及时进行释放多个线程;将线程最大任务数为设置5个。
技术领域
本发明涉及属于计算机程序开发技术领域,尤其是android下载管理技术。
背景技术
在Android的开发过程中下载部分是一个非常常用的功能,很多时候开发者都是自己简单的实现。所以存在很多缺陷,其一是功能不统一,一般不会考虑多任务下载、下载状态信息反馈通过广播而不是接口方式反馈等。
因为每个设计者设计的不同和实现方式上存在差异,导致系统下载管理模块这块会出现冗余或者功能性的异常等。对于大文件或者断点续传的功能并没有加入进去,这样在下载不是很稳定的情况下会反复进行重新下载,损耗流量开销。
现有技术没有对Android的下载管理设计给出较好的方法。
发明内容
本发明目的上,提出一种Android的开发过程中对android下载管理模块的设计方法,规范且不会出错。通过一个下载管理模块来进行下载任务的确定与执行。
本发明的技术方案是,一种基于Android的下载管理方法,步骤如下:
1)首先app启动下载任务,启动下载任务的时候传递一个优先级变量传递给下载管理模块;
2)下载任务首先会将任务放入到下载队列中,将高优先级的排放在队列前段优先处理;将低优先级的排放在队列尾端最后处理。排列规则如下:
a)将优先级高的排列在前面;
b)将普通优先级排列在高优先级后;
c)将低优先级排列在普通优先级后;
由优先级变量决定优先级高和优先级低的级别;
下载管理模块中使用线程管理器即设有线程池来管理下载线程,当多个下载任务一起请求的时候,开启多个线程去同时处理下载任务,并且在下载任务完成后会及时进行释放多个线程;线程池在使用的过程中有多种模式可以选择,常见的几种模式如下:
newCachedThreadPool:创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程;
或newFixedThreadPool:创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。
或newScheduledThreadPool:创建一个定长线程池,支持定时及周期性任务执行。
本发明方案中选择带有缓存功能的线程管理器newCachedThreadPool,并且我们将线程最大任务数为设置5个,这样当下载任务过来的时候,最多可以同时执行5个下载任务,并且后续进来的任务不会开启新的线程、而直接使用之前使用过的缓存线程。
如果需要下载文件的大小小于4M,则直接读写到文件中;如果大于1M,则需要先将数据读写到缓存中,然后写到文件里,同时更新下载进度,并实时的通知页面进度,直到剩余的需要下载文件的大小小于4M则直接读写到文件中。
有益效果,本发明设计方案避免了现有技术的缺点,详细设计了一套可复用,功能齐全,支持断点续传和下载状态实时反馈等优点于一身。并能够支持超大文件下载,下载过程中不会出现OOM(内存溢出)的异常情况。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于焦点科技股份有限公司,未经焦点科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011437043.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于转动调节的液晶显示一体机及控制系统
- 下一篇:显示面板及显示装置





