加载Bitmap出现OutofMemoryError的原因:

1、移动设备通常有限制的系统资源。 Android设备有少的16MB内存可用于单个应用程序,虚拟机的兼容性提供了所需的最小内存为各种屏幕尺寸和密度的应用程序。许多设备都配置了更高的限制。

2、位图占用了大量的内存,尤其是对丰富的图像就像照片。例如,对Galaxy Nexus的相机拍摄的照片多达2592x1936像素( 5百万像素) 。如果所使用的位图配置ARGB_8888 (从Android 2.3以后的默认值) ,然后加载这个映像复制到内存大约需要内存19MB (2592 * 1936 * 4字节) ,马上耗尽每个应用程序限制在某些设备上。

3、Android应用程序用户界面的经常需要几个位图一次被加载。如ListView中, GridView和ViewPager组件通常包括多个位图在屏幕上立刻多了很多潜在的随手指滑动显示。

更多相关文章

  1. ANDROID 探究oom内幕
  2. Android防止内存泄露
  3. Android应用程序的开机自启动
  4. Android应用程序访问linux驱动第一步:实现并测试Linux驱动
  5. android中Bitmap导致的内存溢出
  6. Android的内存,进程调度管理
  7. Android应用程序权限机制的源代码分析(1)
  8. 降低android应用程序耗电量的解决方案
  9. 跟Google学习Android开发-起始篇-保存数据(2)

随机推荐

  1. Android笔记之二:改进的NotePad Demo
  2. 关于getSharedPreferences 使用注意条件
  3. android资源管理和使用资源 (2015.12.1)
  4. android 蓝牙开发 蓝牙 bluetoothsocket
  5. 获取android配置文件的版本信息
  6. Android开源DiscreteSeekbar:动画气泡指示
  7. android的多媒体数据库
  8. Android上的OpenVPN-TAP模式/策略路由
  9. 手动安装配置Android(安卓)Studio
  10. android 启动过程及init.rc