AndroidOne框架是采用MVC模式,集成了Android主流开源技术及组件,是一款极速且简单高效开发框架,整个项目包含两个部分AndroidOne,oneCore

AndroidOne为演示项目,里面介绍了该框架的使用方法及Demo

oneCore是该框架的核心项目,AndroidOne依赖于oneCore

下载地址:https://github.com/devinhu/androidone

AndroidOne框架继承了很多的功能,在文档中可以得知,在这里主要介绍一下DownloadManager的使用

1.首先要得到一个DownloadManager的实例,除了下面这种没有参数的方法,还有一种带参数的方法来生成实例getInstance(String rootPath);rootPath是设置下载的文件保存在哪里

 如果不设置会保存在SDCard中download目录下。

 DownloadManager dm = DownloadManager.getInstance();

2.然后设置DownloadManager的回调方法

dm.setDownLoadCallback(new DownLoadCallback(){
@Override
public void onLoading(String url, int bytesWritten, int totalSize) { } @Override
public void onSuccess(String url, String filePath) { } @Override
public void onFailure(String url, String strMsg) { }
});

这个回调是对下载过程的一些处理:

onLoading()方法当文件正在下载的时候会频繁的调用。里面有三个参数,URL可以用来唯一标识当前是哪个下载任务,bytesWritten是当前已经下载的文件大小;totalSize是下载文件的总     大小。通过这两个int型的数据可以确定当前文件下载的进度。

onSuccess()方法会在下载完成的时候调用。

onFailuer()方法会在下载失败的时候调用。

3.添加下载文件,开始下载,暂停下载,继续下载

dm.addHandler(url);
dm.pauseHandler(url);
dm.continueHandler(url);

看源码可以发现在DownloadManager里面有一个方法startManager();这个方法的作用是开始下载。我们在代码中没有调用这个方法是因为addHandler()方法中会调用startManager()方法

上面三个方法建议在按钮的点击事件中调用,这样可以更加直观的控制整个下载过程

DownloadManager是一个单例类,所以使用的时候如果生成了太多的实例不需要担心;

DownloadManager支持多线程下载,多任务同时下载,断点续传等等功能,DownloadManager默认支持同时下载五个文件,如果你的不能满足你的需求可以更改任务数

AndroidOne框架源码使用eclipse开发,所以在Android Studio上面使用需要先将oneCore项目导成Android Studio 格式,再讲oneCore导入Android Studio添加项目依赖

或者在eclipse里面直接导成jar包,将jar包添加到libs目录下引入项目。在导成jar包的时候注意不要勾选配置文件,否则会报错

最新文章

  1. Codeigniter 3.0 相关文档 part two
  2. 使用JS实现轮播图的效果
  3. dinic模板
  4. tiff或tif文件的读取
  5. OI再见
  6. 转ORA-28002: the password will expire within 7 days 解决方法
  7. 图片处理工具类 - ImageUtils.java
  8. Kooboo中如何切换数据库(注意:如果切换数据库,需要Kooboo中没有一个website 否则会报错数据库中没有表之类的)
  9. 33个优秀的HTML5应用演示 (转)
  10. MVC学习 (二) Razor语法
  11. 使用Windows2003创建DNS服务器 - 进阶者系列 - 学习者系列文章
  12. 关于CKEditor.NET的安全性错误
  13. Linux上部署SVN
  14. python github
  15. 通过注解配置Bean
  16. jQuery基础语法知识梳理
  17. Ubuntu16.04中禁用UTC解决双系统时间问题
  18. JAVA_连接池、DataSource、JNDI
  19. 运动规划——PT and PVT 模式
  20. 灵书妙探第八季/全集Castle迅雷下载

热门文章

  1. ADO.NET程序访问数据的组件
  2. PHP学习笔记二十三【This】
  3. OD调试2---TraceMe
  4. 浏览器的Storage做缓存需要注意的地方
  5. Windows I/O模型之一:Select模型
  6. C++11新特性
  7. hdu1443(约瑟夫环游戏的原理 用链表过的)
  8. 解决MYSQL弃用模块错误Deprecated: mysql_query(): The mysql extension is deprecated and will be removed in the future
  9. jQuery.data的是jQuery的数据缓存系统
  10. Android自学学习资料