Android加載Bitmap出現OutofMemoryError的緣由(官方譯文)

加載Bitmap出現OutofMemoryError的緣由:spa

一、移動設備一般有限制的系統資源。 Android設備有少的16MB內存可用於單個應用程序,虛擬機的兼容性提供了所需的最小內存爲各類屏幕尺寸和密度的應用程序。許多設備都配置了更高的限制。內存

二、位圖佔用了大量的內存,尤爲是對豐富的圖像就像照片。例如,對Galaxy Nexus的相機拍攝的照片多達2592x1936像素( 5百萬像素) 。若是所使用的位圖配置ARGB_8888 (從Android 2.3之後的默認值) ,而後加載這個映像複製到內存大約須要內存19MB (2592 * 1936 * 4字節) ,立刻耗盡每一個應用程序限制在某些設備上。資源

三、Android應用程序用戶界面的常常須要幾個位圖一次被加載。如ListView中, GridView和ViewPager組件一般包括多個位圖在屏幕上馬上多了不少潛在的隨手指滑動顯示。虛擬機

相關文章
相關標籤/搜索