在我的项目中,我使用一些drawable来创建外观漂亮的UI,我得到的奇怪问题是它在Kindle Fire上运行良好,2.3.4版本正常并且仅占用2.8397MB,但是当我运行相同的应用程序时在nexus 4.2.1设备中,它占用了23.45678MB到30MB并且运行速度非常慢,我认为这个问题将出现在drawables上,因此为它们创建了9补丁,但仍然遇到同样的问题。
答案 0 :(得分:4)
在预蜂窝设备(如2.3.4 Kindle Fire)上,位图存储在本机堆中,在分析ddms中的dalvik堆内存使用情况时,它不会显示。
但不意味着它仍然不会计入堆限制。
Honeycomb和更高版本的设备在dalvik堆中存储位图,这些位图将显示在ddms中。这应该可以解释为什么Kindle Fire的内存使用率会低得多。事实并非就是这样。
答案 1 :(得分:0)
每个分辨率有不同的drawable
文件夹吗?如果是这样的话,可能是因为这与你在不同文件夹中拥有的资源有关,因此你的Nexus上加载的drawable明显大于你的点燃火上加载的drawable(点火器的分辨率为1024x600而Nexus 7分辨率为1280x800)