Android 源码分析
MG_ZXC
关注领域Java、Android、算法数据结构、计算机网络、计算机视觉
展开
-
Android中EventBus介绍、使用及源码分析
1 介绍EventBus是一款针对Android优化的发布/订阅事件总线。主要作用用于Android中不同组件不同线程之间的通信简化了组件之间的通信将事件发送者和接收者分开与Activity,Fragments和后台线程执行得很好避免了复杂和容易出错的依赖和生命周期问题主要优点使您的代码更简单很快很小(约50k) 具有高级功能,如传送线程,用户优先级等原创 2018-01-30 22:28:26 · 487 阅读 · 0 评论 -
Android 中Handler、Message、Looper机制详解
通过这张图,大家会对Handler、Message有一个初步的、形象化的认识。下面我们研究Handler、Message的源码。我们先了解与消息机制有关的几个类1、Message消息对象,顾名思义就是记录消息信息的类,这个类有几个比较重要的字段:a、arg1和arg2:我们可以使用两个字段用来存放我们需要传递的整型值,在Service中,我们可以用来存放Service的ID...原创 2018-01-26 09:10:02 · 607 阅读 · 0 评论 -
Android 中异步任务AsyncTask源码分析
为何要引入AsyncTask?在Android程序开始运行的时候会单独启动一个进程,默认情况下所有这个程序操作都在这个进程中进行。一个Android程序默认情况下只有一个进程,但一个进程中可以有多个线程。在这些线程中,有一个线程叫做UI线程(也叫Main Thread),除了UI线程外的线程都叫子线程(Worker Thread)。UI线程主要负责控制UI界面的显示、更新、交互等。因此,U...原创 2018-01-27 10:04:41 · 1909 阅读 · 2 评论 -
Android中三级缓存实现原理及LruCache 源码分析
介绍oom异常:大图片导致 图片的三级缓存:内存、磁盘、网络 下面通过一张图来了解下三级缓存原理:代码:public class Davince { //使用固定线程池优化 private static ExecutorService threadPool = Executors.newFixedThreadPool(Runtime.getRuntime...原创 2018-04-08 16:16:18 · 2771 阅读 · 1 评论 -
Android中HandlerThread介绍与使用案列
HandlerThread 产生背景1、开启Thread子线程进行耗时操作 2、多次创建和销毁线程是很耗资源的HandlerThread是什么是handler+thread+looper结合,是一个thread内部有looper特点: - 本质上是一个线程类,继承了thread, - 其内部有自己的Looper对象,可以进行looper循环, - 通过获取hand...原创 2018-04-02 19:01:41 · 533 阅读 · 0 评论 -
Android中IntentService介绍与使用案例
介绍IntentService是继承并处理异步请求的一个类,在IntentService内有一个工作线程来处理耗时操作,启动IntentService的方式和启动传统的Service一样,同样,当任务执行完后,IntentService会自动停止,而不需要我们手动去控制或stopSelf()。另外,可以启动IntentService多次,而每一个耗时操作会以队列的方式在IntentServic...原创 2018-04-02 21:56:28 · 1538 阅读 · 0 评论