Android 异步处理方式简述
来源:互联网 发布:淘宝恶意退款卖家报警 编辑:程序博客网 时间:2024/06/14 10:37
异步处理对于Android 开发来说是一个很重要的组成部分,不管是请求服务器,还是其它耗时工作都要用到异步处理的方式,用好它可以让程序运行更加流畅,我就目前项目使用的以及其它相关资料总结一下都有哪些方式,后续持续更新,以后再用到时可以择优使用,并对比优缺点,写出一些自己的心得。
首先总结一下有哪些场景需要用到异步处理:
1.请求服务器获取数据后更新UI的场景
2.连续下载多个文件后更新进度显示的场景
3.批量下载大量图片或者文件的场景
1. Thread +handler 的方式,适合用在场景1
2.AsyncTask 这种方式本身封装了一些进度控制的方法,适合用在场景2,当然场景1也可以用
3.ExecutorService+handler 方式适合第三种场景可以复用线程,线程开销很大大家都知道,所以大量下载需要用到这种,而且方便的控制线程结束
4.比较优秀的开源框架有RxJava和RxAndroid,即使在复杂的异步处理,也能让逻辑很清晰
其实有时候最难得还是线程的控制,每一个任务都处理的很得当
5.RxJava要比EventBus的应用更广泛,EventBus仅仅是作为一种消息的传递工具,但是RxJava里面几乎可以做任何事情。
如果是Android开发的话,可以使用RxAndroid,这是对RxJava的一个扩展,结合sqare公司的retrofit可以很轻松的完成网络的访问。
我们知道,在Android中异步操作一般使用AsycTask来完成,但是AsycTask有很多缺点,如不能方便的终止任务的执行等。
RxAndroid完全可以替代AsycTask来完成各种异步操作,而且还有BindActivity和BindFragment方法,你根本不需要考虑异步操作时的Activity和Fragment的生命周期问题,还有更加强大的的链式调用,可以使程序很简洁。
以上,推荐使用RxAndroid- Android 异步处理方式简述
- android中两种异步处理方式
- Android线程处理简述
- Android线程处理简述
- Android线程处理简述
- Android线程处理简述
- 简述三种异步上传文件方式
- Android异步处理的几种方式(附demo)
- android IPC通信方式简述
- Android AsyncTask异步处理
- Android异步处理
- Android异步消息处理
- Android异步处理
- Android AsyncTask异步处理
- Android AsyncTask异步处理
- android异步处理
- Android实现异步处理
- Android AsyncTask异步处理
- 从零到一:用Phaser.js写意地开发小游戏(Chapter 3
- ZOJ 3229 Shoot the Bullet
- Installation failed with message Failed to establish session解决方案
- 半角输入与全角的相互转化
- oracle逗号拆分
- Android 异步处理方式简述
- iOS PCH文件引入
- 第六章 磁盘和文件系统管理
- POJ1141,brackets sequence,括号比配的问题
- 用ps给照片添加水印
- 线程安全的集合
- 99%的人都理解错了HTTP中GET与POST的区别
- mongodb使用
- AnroidStudio 配置kotlin 基础操作