Android Bitmap占用的内存大小

作者 qiuzhong 日期 2016-10-08
Android Bitmap占用的内存大小

图片是由像素组成的,所以要计算一张图片的大小,需要知道 3 个参数:

  • 图片的长
  • 图片的宽
  • 每个像素占用的内存大小因此,得到一个公式
    图片占用的内存大小 = 图片长 x 图片宽 x 每个像素占用的内存大小

在 Android 中,每个像素占用的内存大小是由 Bitmap.Config 来决定的,它有 4 种配置

配置 占用的字节数
Bitmap.Config.ALPHA_8 一个像素1个字节
Bitmap.Config.ARGB_4444 一个像素2个字节
Bitmap.Config.RGB_565 一个像素2个字节
Bitmap.Config.ARGB_8888 一个像素4个字节

所以,影响BitmapFactory.decodeStream()生成的Bitmap的大小的是Bitmap.Config的值。