0

由于我的应用程序使用了大量图片,因此我在旧设备上遇到了著名的 OutOfMemoryError 问题。

说明:http ://androidactivity.wordpress.com/2011/09/24/solution-for-outofmemoryerror-bitmap-size-exceeds-vm-budget/

根据 Android 开发人员的说法,您的设备至少有 16MB 的堆空间 (T-Mobile G1) 用于存储您的应用程序数据。但正如 Yekmer 在 Yekmer's Posterous 中所说,图像不存储在堆空间中。Android 应用中为图片预留的空间非常小,如果一个大应用使用大量图片,很容易导致 OutOfMemoryError。

我的问题

有很多代码,我想知道 Android Studio 中是否有一个工具可以帮助我跟踪图像使用的内存,并知道我的代码的哪些步骤增加了最多使用的内存。

我不需要什么

我知道如何获取类似ActivityManager.getMemoryInfo()或的信息,Runtime.getRuntime().totalMemory()但我想它们不会有用,对吧?

一些想法

我试图理解“ adb shell dumpsys meminfo”给出的数字,但我不知道这是否是一个好的开始......

4

1 回答 1

2

使用 MAT 诊断内存泄漏和其他内存不足的原因:

于 2013-08-05T15:55:02.487 回答