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