1

我的应用在没有 UI 的情况下会消耗 10M 内存。给它添加 UI 后,它会消耗大约 25M 的内存。有时这会导致崩溃。用作背景、按钮等的图像是由 Photoshop 制作的。我想知道内存消耗与图像质量和大小之间的关系。例如:当前背景的分辨率是400x600,磁盘60kb,哪一个会减少内存使用?

  1. 把它的分辨率变小,比如 40x60,让它伸展。
  2. 降低质量以使此图像文件的大小更小,例如 10kb。

我不知道降低图像文件的质量是否会影响内存使用。如果android将图像传输到位图?如何决定图片资源的大小和分辨率。

谢谢你。

4

1 回答 1

1

http://developer.android.com/training/displaying-bitmaps/index.html。从阅读链接开始

上面的链接让您了解如何有效地加载位图。尝试在不使用时回收位图。

使用 MAT Analyzer 查找内存泄漏。http://www.youtube.com/watch?v=_CruQY55HOk。链接中的视频讨论了内存管理以及如何查找和消除内存泄漏。

内存泄漏可能还有其他原因。减少使用静态变量(不推荐使用静态变量)。您可能应该尽可能尝试使用 Application Context 而不是 Activity 上下文(这并不总是可能的)。

如果没有代码,社区将无法找到内存泄漏的实际原因。 要考虑的性能提示。

于 2013-03-14T11:01:42.267 回答