Kingfisher源码解析之加载流程

1,907 阅读1分钟

Kingfisher源码解析系列,由于水平有限,哪里有错,肯请不吝赐教

1. 当我们调用imageView.kf.setImage()之后发生了什么?

当我们调用imageView.kf.setImage()之后发生了什么?

2. Kingfisher中图片加载的流程是什么?

Kingfisher中图片加载的流程是什么?

3. Kingfisher是如何缓存图片的?

Kingfisher是如何缓存图片的?

4. Kingfisher是如何查找缓存的?

Kingfisher是如何查找缓存的?
注:图中有较多的查找失败,加工失败,并且也返回true,并且返回true,也不会再重新从网络上加载,但是Kingfisher里就是这么处理的,我认为是合理的,首先这种情况发生的情况是极低的,首先在获取之前先去排查了一下,文件是否存在,只有在存在的时候才会去加载,因此查找不到的可能性极低,而加工失败的话,很大可能性是processor或者cacheSerializer的问题,即使重新下载一遍,很很有可能有问题,除非我们写入文件的数据,在其他地方被动过,但这种可能性也不大