android圖片的緩衝--節約記憶體提高程式效率,

來源:互聯網
上載者:User

android圖片的緩衝--節約記憶體提高程式效率,

現在android應用占記憶體一個比一個大,android程式的品質亟待提高。

這裡簡單說說網狀圖片的緩衝,我這邊就簡單的說說思路


1:網狀圖片,無疑需要去下載圖片,我們不需要每次都去下載。

維護一張表,表裡面放url 對應 儲存的檔案名稱

實現方法就是先拿到要下載的url,拿這個url去資料庫匹配,如果有這張圖片,那就不需要重新去下載了,直接通過資料庫,去拿到圖片的位置,然後從本地把圖片載入出來就OK了。沒有這張圖片的時候去下載一下,並且存一下資料庫

好處:這麼做的好處很明顯,下載過的圖片不需要重新去下載,也節約了本地的空間,下載多張同樣的圖片放本地也不是好事兒。


2:圖片資源的記憶體處理,一張圖片需要在多個地方顯示,例如自己頭像,需要在很多地方顯示,不需要每個地方都去載入這張圖片,這樣會浪費很多資源。

實現方法,在記憶體裡維護一個Bitmap的 MAP,key放url,value放這個Bitmap   我們拿到一個url,先看記憶體裡是否有這張圖片,有就直接從拿出來用。

好處 :bitmap是很占記憶體的,重用它可以節約很多記憶體,其次從本地載入圖片也是需要消耗資源的,每張圖片只要載入一次,這樣是不是就好很多了呢。


做到這兩點,圖片這塊的效率可以看到明顯的多了很多,OOM神馬的我就不說了,寫這個希望大家對大家程式最佳化會有一些協助,至於這個工具類有空的時候再寫吧,網上也有不少,寫這篇部落格就還想看看能不能弄幾個C幣,最近挺忙,也沒時間好好寫部落格,大致寫個混混個C幣,對大家應該也會是有些許協助的





聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.