原文地址:http://developer.android.com/training/displaying-bitmaps/index.html html
这篇文章学习如何使用通用的方法和流程在加载图片对象,来保持组件可响应和避免超出应用的内存限制。若是你不注意,图片会很快的消耗内存致使应用崩溃,抛出异常:java.lang.OutofMemoryError: bitmap size exceeds VM budget
.java
下面有几个缘由来表达为何在android应用中加载图片要很谨慎。
android
一、移动设备的特性限制了系统资源。android设备针对一个应用仅仅提供16MB的可用内存。虚拟机的兼容性会根据不一样屏幕的大小和分辨率提供请求的最低应用缓存。应用应该在最低应用缓存上有良好的支持。缓存
二、图片会占用很是多的缓存,特别是丰富的图片像照片。例如在Galaxy Nexus的照相的相片须要2592x1936像素,若是图片的设置使用ARGB_8888来加载图片到缓存会占用19MB的内存。当即超过了一些设备对一个应用的限制。学习
三、android应用一次性平凡请求各类图片的加载。组件ListView、GridView、ViewPager一个屏幕一次会显示多张图片。spa