17.8 MiB堆分配用于简单的"Hello World"项目?

Cro*_*ile 6 heap android garbage-collection heap-memory eclipse-memory-analyzer

我猜这里有一个明显的答案......我对此感到困惑:

为什么我所做的就是分配17.8 MiB堆内存:

  1. 使用Eclipse的New Project选项创建了一个简单的"Hello World"项目.
  2. 并添加了56 KiB背景图像.

如果我取出android:background="@drawable/background4"线路,分配的内存将降至11.9 MiB.

  • 系统分配这么多内存是否正常?我应该担心吗?
  • 什么会占用这么多堆?

我也对它进行了MAT报告,但我不确定从中得出什么结论:

提前致谢,

Com*_*are 4

并添加了 56 KiB 的背景图片。

否,您添加了一个 56 KiB文件,并将其用作背景图像。

位图实际消耗的堆空间是每个像素三个字节。使用 ~6MB 位图(每个 MAT 屏幕),您可以在相当高分辨率的设备或模拟器上运行应用程序(1080p 应该导致 ~8MB,IIRC)。