「Glide」源码解析系列总结

2019-03-09  本文已影响0人  s1991721

图片加载库Glide的使用简单且功能强大,其源码的架构对于项目架构和框架设计都有很好的学习和指导意义。

本系列虽是源码解析,但并不能面面俱到,解析会从流程入手,着重明确里程碑式的关键类。

Glide源码我分为几个层次:

源码设计逻辑简短总结:

在要加载的页面添加fragment监听页面生命周期(RequestManagerRetriever负责此工作)

每个fragment都有且仅有一个RequestManager与其对应

同一页面可能有多个图片加载请求,对应多个RequestBuilder和多个Target

RequestBuilder生成具体的SingleRequest请求

SingleRequest通过Engine查找资源是否在引用缓存或内存缓存中

SingleRequest通过DecodeJob加载其余各级缓存的资源,其中EngineJob充当线程调度的角色

上一篇 下一篇

猜你喜欢

热点阅读