開發(fā)中非常常用的就是就是圖片下載,我們常用的就是SDWebImage,但是作為開發(fā)人員,不僅要能會(huì)用,還要知道其原理。本文就會(huì)介紹多圖下載的實(shí)現(xiàn)。
本文中的示例Demno地址,下載后項(xiàng)目位于iOS_Demo/09-多圖片多線程下載
1 - 問題
開篇我就先將多圖下載過(guò)程中出現(xiàn)的問題擺出來(lái),讓我們能夠一一克服
。
1:下載過(guò)程要放到子線程中,否則會(huì)導(dǎo)致UI線程卡頓
2:圖片會(huì)重復(fù)下載,我們不僅要把下載完的圖片放到內(nèi)存中,還要把下載隊(duì)列也緩存起來(lái),否則可能圖片沒有下載完,會(huì)多次創(chuàng)建下載隊(duì)列
3:沙盒緩存,放到哪里,根據(jù)下面對(duì)沙盒文件的介紹我們需要把圖片放到Library/Caches目錄下。
Document : iTunes會(huì)備份Library : 1:Caches:緩存文件,不會(huì)清除 2:Preferences:偏好設(shè)置,保存賬號(hào)信息 tmp :臨時(shí)路徑,隨時(shí)會(huì)被刪除,臨時(shí)的不是重要的數(shù)據(jù)