Android 緩存機(jī)制(三)

服務(wù)端下載圖片

下載成功后調(diào)用1內(nèi)存緩存的putBitmap()函數(shù),緩存圖片。

在外部文件緩存中也寫入一份,調(diào)用2的putBitmap()函數(shù).

預(yù)覽圖片的流程

1) 如果預(yù)覽的圖片在內(nèi)存緩存區(qū)中,直接調(diào)用1的getBitmap()函數(shù),獲取bitmap數(shù)據(jù)(先在硬引用緩存區(qū)查找匹配,若硬引用區(qū)匹配失敗,再去軟引用區(qū)匹配)

2) 如果從內(nèi)存緩存區(qū)讀取失敗,再從外部文件緩存中讀取,調(diào)用2的getBitmap()函數(shù)

3) 如果從外部文件緩存中讀取失敗,則從服務(wù)端下載該圖片,過程3.

生成key值

private static String generateKey(String fileId, int width, int height) {

String ret = fileId + "_" + Integer.toString(width) + "x" + Integer.toString(height);

return ret;

}

String key = generateKey(...)即可生成唯一的key值

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 相冊圖片預(yù)取緩存策略是內(nèi)存緩存(硬引用LruCache、軟引用SoftReference)、外部文件緩存(cont...
    ifeng_max閱讀 605評(píng)論 0 4
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,609評(píng)論 19 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,734評(píng)論 18 399
  • 音樂對(duì)于我來說,是個(gè)很神奇的東西,幾乎每一個(gè)重要的記憶,都能跟音樂聯(lián)接起來。不確定現(xiàn)在浮現(xiàn)出來的記憶,到底是真實(shí)存...
    默寒霖閱讀 200評(píng)論 0 0
  • 看的電影,讀的書越多,尤其是小說,每看完一本,就放佛自己經(jīng)歷了書中每一個(gè)角色的人生,對(duì)主角的無限向往,恨不能自己就...
    慎獨(dú)于行閱讀 245評(píng)論 0 0

友情鏈接更多精彩內(nèi)容