Android源码分析
wn1137162270
这个作者很懒,什么都没留下…
展开
-
View滑动冲突
View和ViewGroup的事件分发机制 概述 所谓点击事件的事件分发,其实就是对MotionEvent事件的分发过程。即当一个MotionEvent产生了以后,系统需要把这个事件传递给一个具体的View,而这个传递的过程就是分发过程。点击事件的分发过程由三个很重要的方法来共同完成:dispatchTouchEvent、onlnterceptTouchEvent和onTouchEvent。 p...原创 2020-03-27 19:41:05 · 246 阅读 · 0 评论 -
Android性能优化
Android性能优化 原因 Android设备作为一种移动设备,不管是内存还是CPU的性能都受到了一定的限制,无法做到像PC设备那样具有超大的内存和高性能的CPU。这也意味着Android程序不可能无限制地使用内存和CPU资源,过多地使用内存会导致程序内存溢出,即OOM。而过多地使用CPU资源,一般是指做大量的耗时任务,会导致手机变得卡顿甚至出现程序无法响应的情况,即ANR,由此来看,Andr...原创 2020-03-27 19:25:32 · 208 阅读 · 0 评论 -
线程池
线程池 优点 重用线程池中的线程,避免因为线程的创建和销毁所带来的性能开销。 能有效控制线程池的最大并发数,避免大量的线程之间因互相抢占系统资源而导致的阻塞现象。 能够对线程进行简单的管理,并提供定时执行以及指定间隔循环执行等功能。 ThreadPoolExecutor Android中的线程池的概念来源于Java中的Executor,Executor是一个接口,真正的线程池的实现为Thre...原创 2020-03-27 19:13:11 · 89 阅读 · 0 评论 -
AsyncTask的工作原理
AsyncTask的工作原理 概述 AsyncTask是一种轻量级的异步任务类,它可以在线程池中执行后台任务,然后把执行的进度和最终结果传递给主线程并在主线程中更新UL从实现上来说,AsyncTask封装了Thread和Handler,通过AsyncTask可以更加方便地执行后台任务以及在主线程中访问UI,但是AsyncTask并不适合进行特别耗时的后台任务,对于特别耗时的任务来说,建议使用线程...原创 2020-03-27 19:09:35 · 1100 阅读 · 0 评论 -
Android异步消息传递机制
Handler的异步消息传递机制 MessageQueue工作原理 MessageQueue主要包含两个操作:插入和读取。读取操作本身会伴随着删除操作,插入和读取对应的方法分别为enqueueMessage和next,其中enqueueMessage的作用是往消息队列中插入一条消息,而next的作用是从消息队列中取出一条消息并将其从消息队列中移除。尽管MessageQueue叫消息队列,但是它的...原创 2020-03-27 19:06:12 · 219 阅读 · 0 评论