Android 小 PNG 导致高 RAM 使用率

Android small PNG causes HIGH RAM usage

我的问题本质上是这样的:

17kb png 文件到底是怎么导致内存飙升到 60MB 的?

我注意到 UI 每当特定图像出现在屏幕上时都非常缓慢。

我已将我的问题缩小为我正在使用的 *.PNG 文件。它只有 17kb。 http://imgur.com/BGkfAnj

在内存监视器中,内存使用量高达 60MB。

我的 android 2.3 模拟器大约有 3MB,而我的 phone 上升到 60MB,我的 nexus 6 (5.0.1) 模拟器由于 "java.lang.OutOfMemory" 错误而强制关闭。

简单的 PNG 压缩得很好,因此文件大小可能会产生误导。

这张位图有 1400x1400 像素。所以当解压缩为位图时它是 7.8MB。 Nexus 使用硬件加速。它可能会用 2048x2048px 纹理缓冲此图像,这是另一个 16.8MB(压缩后可能更少)。

Nexus 6 的屏幕非常密集,加载时可能会缩放图像 - 这可能是另一个原因。