了解Android可绘制文件夹,图像缩放和内存使用情况

时间:2016-03-03 09:17:30

标签: android memory bitmap heap

我有一个标有24480x160的flags.png文件。我将此文件放在“drawable”文件夹中,并将其加载到模拟器上的位图,该位图为420dpi(xhdpi)。我生成了一个堆转储并检查了hprof。位图drawable占用8.7 MB。堆大小为72 MB,分配了56 MB。

对xxxhdpi文件夹中的图像执行相同的练习,位图drawable保持相同的大小,但堆大小变为28 MB,使用17 MB。

据我所知,“drawable”被认为是mdpi,Android在加载图片时会做一些缩放。它似乎与xhdpi设备上的hdpi和mdpi drawables做同样的事情。我不明白的是,究竟发生了什么导致相同的8.7 MB图像但具有不同的堆大小。更具体地说,如果它将产生相同的8.7MB图像,为什么首先缩放并导致大堆增加?

0 个答案:

没有答案