每日日报
Glide 框架
主要分为两大流程:
1.1 图片请求的构建流程。
1.2 图片缓存的获取流程。
图片请求构建流程内又分为四个模块:
2.1 用户态的请求模块: 用户使用 Glide 进行链式调用的时候会生成一个用户态的 Request。
2.2 真实的请求模块: 由于步骤2.1中会根据场景构建多种Request,因此在发起图片请求时需要进行收口,因此会使用用户态的 Request 构建一个真正的 GenericRequest 请求。
2.3 Request 生命周期管理模块: Glide 的一大特点是会将图片的请求和页面生命周期进行绑定,避免出现内存泄漏的风险,因此会有一个 Request 生命周期管理模块。
2.4 Registry中心模块: 由于 Glide 支持加载多种类型的数据,因此在注册中心会预先注册所支持类型处理类的信息。
图片缓存一共分为3大层,5小层:
3.1 内存缓存(2小层): 弱引用缓存、LruCache。
3.2 本地缓存(2小层): 本地 Result 缓存、本地 Source 缓存。
3.3 Source 数据源(1小层): 网络获取、本地 AssetPath 获取、其它本地图片。
本文作者:durtime
本文链接:https://www.cnblogs.com/durtime/p/14838697.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步