需求:
apk更新安装
关于下载,需要考虑的问题:
1.多任务下载
2.多线程下载
3.断点续传
4.高并发
方案:
- 自己封装URLConnection 连接请求类
- 使用第三方 okhttp 网络请求框架
- 使用第三方库liulishuo
- Android自定的下载管理(会在notification 显示下载的进度,同时可以暂停、重新连接等)
- 使用Android高能下载库FileDownloader
- AndroidDownloader 一个开源的多线程,多任务下载框架
- 等等……
(第三方下载库的,有很多很多,不赘述。下载着重介绍使用Android自带的DownloadManager进行下载和安装apk)
进入正题:
使用Android自带的DownloadManager进行下载,实际上是交付给了系统app来完成,这样的好处不会消耗自身APP的 CPU资源。因为系统分配给每个app的内存大小等都是有限制的。像目前很多封装好的下载的第三方库大多也都是会另开一个后台服务,更有甚