如何利用Android特点及设计模式 设计一个网络下载功能
来源:互联网 发布:威海打车软件 编辑:程序博客网 时间:2024/04/30 00:52
Android下载功能,需要考虑异步加载, 此文章中使用的是在后台开启一个服务(A) ,服务中开启一个线程去进行下载.
考虑到MVP模式的广泛使用,现在Android开发越来越趋向于接口编程. 所以利用接口(B) 方法来进行相关的反馈.通过这些反馈发起广播,在UI界面端通过接收广播(C) ,来发送UI更新的消息.UI界面中通过处理消息 (D) 来进行界面更新.
下面是服务(A) 中主要代码:
private void startDownload() { if (flag == Flag_Init || flag == Flag_Pause) { if (mThread != null && !mThread.isAlive()) { mThread = new DownThread(); } mThread.start(); } }
下面为接口(B) 中主要代码,此接口在服务(A)中作为内部类, 在MVP模式实体类中将会使用到这个接口实现类
private DownloadListener downListener = new DownloadListener() {
int fileSize; Intent intent = new Intent(); @Override public void onSuccess(File file) { intent.setAction(MainActivity.ACTION_DOWNLOAD_SUCCESS); intent.putExtra("progress", 100); intent.putExtra("file", file); sendBroadcast(intent); } @Override public void onStart(int fileByteSize) { fileSize = fileByteSize; flag = Flag_Down; }
}
由于时间原因,待续
完整代码
0 0
- 如何利用Android特点及设计模式 设计一个网络下载功能
- Android进化史 设计风格进化及特点
- 设计模式 特点比较
- 设计模式特点收藏
- 利用简单工厂模式设计一个计算器
- 优雅设计封装基于Okhttp3的网络框架(二):多线程下载功能原理设计 及 简单实现
- 每种设计模式的特点
- 各种设计模式分类特点
- 如何利用Memento模式设计存档
- MVP-Android设计模式:下载器实战
- 网络视频编码器功能特点及技术参数
- 如何设计一个单例模式
- 设计模式功能概要
- 《设计模式》pdf下载
- 大话设计模式下载
- 写一个下载播放网络Gif的框架一:设计
- 常用几种设计模式的特点
- android常用设计模式及应用举例
- nodejs中exports与module.exports的区别详细介绍
- InetAddress的使用
- 360浏览器以最高级模式渲染代码
- How to represent ROC curve when using Cross-Validation
- js 实现获取name 相同的页面元素并循环遍历
- 如何利用Android特点及设计模式 设计一个网络下载功能
- Makefile常用万能模板(包括静态链接库、动态链接库、可执行文件)
- 希尔排序
- mysql手撸代码-- 常见表操作标准sql
- 不朽凡人 > 第三百九十章 星主来了
- MVC、MVP、MVVM模式的区别
- 基于Postgres-XL的mpp分布式方案
- Android rild架构及流程介绍【转载】
- 文章标题 POJ 3272 : Monthly Expense (二分)