- 博客(6)
- 收藏
- 关注
原创 Retrofit 源码浅析
/ 通过动态代理的方式创建实例@Override// 如果是 Object 方法直接执行// 获取 ServiceMethod 对象,然后通过 invoke 方法执行= null?});实例的创建主要就是动态代理, 动态代理的原理在以后的博文里进行解释。
2024-06-21 17:09:44
260
原创 Glide 源码浅析
String 相关的就是这几个, 所以他们组成了一个集合被返回, 我们看看各个 Fractory 创建的 ModelLoader 的 handles 函数, 最后遗留的就是我们需要的 ModelLoader。总结起来就是,通过 创建一个 Fragment 与传入的 Activity 声明周期相关联,通过监听 Fragment 的生命周期, 来进行声明周期的一个管理。这里需要注意的是 Glide 的声明周期的管理, 是通过上图中声明周期管理注释处的代码来实现的。从这个函数来看的话,有两种缓存机制, 一种是。
2024-06-12 16:56:53
534
原创 Android RxJava 源码浅析
总结来看,总共分为三个流程。从 Observeble.create 到 subscribe() , 一层层将参数封装为 ObservableXXXX 对象。从 ObservebleObserveOn.subscribeActual 到 ObservableOnSubscribe. subscribe 方法, 将参数封装为 xxxObserver 一层层向上传递。
2024-04-26 13:44:02
965
2
原创 Handler 源码解析
handler 是线程间的消息通讯机制,其主要的核心类为 Handler, Message, MessageQueue 和 Looper。其中 Handler 是主要负责消息的处理,Message 是消息的载体, MessageQueue 为一个队列,用来维护 Message 的先后处理顺序, Looper 为线程唯一变量, 用来不断的从 MessageQueue 中获取 Message , 然后交由 Handler 进行处理。
2023-08-15 20:05:54
79
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人