realWidth = rawWidth * (targetDensity / density);
realHeight = rawHeight * (targetDensity / density);
memory = realWidth * realHeight * pixelSize
targetDensity: 屏幕密度
density: 图片密度(xhdpi/xxhdpi/...)
pixelSize: kUnknown
kAlpha_8 (1B)
kRGB_565 (2B)
kARGB_4444 (2B)
kRGBA_8888 (4B)
kBGRA_8888 (4B)
kIndex_8 (1B)
kGray_8 (1B)
Bitmap.mBuffer
Android 2.3.3 之前 像素数据是存放在 native memory。
Android 3.0 ~ 7.x 像素数据是存放在 java heap
Android 8.0 之后 像素数据是存放在 native heap
java堆/GC堆有内存大小限制