我的问题基本上是这样的:
17kb png文件怎么能导致内存加速到 60MB ?
我注意到,只要屏幕上出现特定图像,用户界面就会非常缓慢。
我已将问题缩小为我正在使用的* .PNG文件。它只有17kb。 http://imgur.com/BGkfAnj
在内存监视器中,内存使用量达到了60MB。
我的android 2.3模拟器大约3MB,而我的手机上升到60MB,我的nexus 6(5.0.1)模拟器因“java.lang.OutOfMemory”错误而关闭。
答案 0 :(得分:4)
简单的PNG压缩得非常好,因此文件大小可能会产生误导。
此位图的像素为1400x1400像素。所以当解压缩到位图时它是7.8MB。 Nexus使用硬件加速。它可以使用2048x2048px纹理缓冲此图像,这是另一个16.8MB(压缩可能更少)。
Nexus 6的屏幕非常密集,可能会在加载时缩放图像 - 这可能是另一个原因。