android
文章平均质量分 95
eklir
知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得。
展开
-
Handler源码分析(api 31)
文章目录1. 从一个最简单的示例开始1.1 创建Handler关于ThreadLocal1.2 Message1.3 发送消息1.4 处理消息2. 整体架构2.1 Looper2.2 MesssageQueue2.2.1 存2.2.2 取3. 探索3.1 测试代码,替换HandlerThread中的Looper为主Looper1. 从一个最简单的示例开始public class MainActivity extends AppCompatActivity { @Override pro原创 2022-04-28 16:19:05 · 338 阅读 · 0 评论 -
OkHttp源码分析(基于4.9.3)
1. 源码分析1.1 整体执行流程:#mermaid-svg-3OrRXY05qKZGWU0i {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3OrRXY05qKZGWU0i .error-icon{fill:#552222;}#mermaid-svg-3OrRXY05qKZGWU0i .error-text{fill:#552222;stroke:#552222;}原创 2022-04-27 00:54:56 · 618 阅读 · 0 评论 -
LeakCanary源码分析(基于1.6.2)
核心技术点1.弱引用探测内存泄露WeakReference(T referent, ReferenceQueue<? super T> q)referent被gc回收时,会将包裹它的弱引用注册到ReferenceQueue中,在gc后判断ReferenceQueue有没有referent包裹的WeakReference,就可以判断是否被gc正常回收。2.原创 2018-11-29 23:05:02 · 1028 阅读 · 0 评论 -
组件化技术要点之AnnotationProcessor
概述Annotation Proccessor注解处理器在android 开源项目中应用广泛,比如大神JakeWharton的ButterKnife。它通过在编译期扫描注解,生成模板类,运行时通过反射调用生成的模板类,以解耦项目,减少模板代码。在项目进行组件化时,页面路由是一个比较核心的问题,从ARouter到JIMU都采用了Annotation Proccessor来实现页面路由。下边将通过...原创 2019-03-20 00:37:01 · 805 阅读 · 0 评论