Kingfisher源碼解析系列,由于水平有限,哪里有錯(cuò),肯請不吝賜教
- Kingfisher源碼解析之使用
- Kingfisher源碼解析之Options解釋
- Kingfisher源碼解析之加載流程
- Kingfisher源碼解析之加載動(dòng)圖
- Kingfisher源碼解析之ImageCache
- Kingfisher源碼解析之Processor和CacheSerializer
- Kingfisher源碼解析之ImagePrefetcher
1. 當(dāng)我們調(diào)用imageView.kf.setImage()之后發(fā)生了什么?

啟動(dòng)流程
2. Kingfisher中圖片加載的流程是什么?

Kingfisher中圖片加載的流程是什么?
3. Kingfisher是如何緩存圖片的?

屏幕快照 2019-12-03 下午11.36.16.png
4. Kingfisher是如何查找緩存的?

Kingfisher是如何查找緩存的?
注:圖中有較多的查找失敗,加工失敗,并且也返回true,并且返回true,也不會(huì)再重新從網(wǎng)絡(luò)上加載,但是Kingfisher里就是這么處理的,我認(rèn)為是合理的,首先這種情況發(fā)生的情況是極低的,首先在獲取之前先去排查了一下,文件是否存在,只有在存在的時(shí)候才會(huì)去加載,因此查找不到的可能性極低,而加工失敗的話,很大可能性是processor或者cacheSerializer的問題,即使重新下載一遍,很很有可能有問題,除非我們寫入文件的數(shù)據(jù),在其他地方被動(dòng)過,但這種可能性也不大