由于我的应用程序使用了很多图片,因此在旧设备上出现了着名的OutOfMemoryError问题。有没有办法跟踪我的应用程序使用的内存,以防止着名的OutOfMemoryError?
根据Android开发您的设备具有的堆 空间(T-Mobile的G1),用于存储应用程序数据中的至少16MB。但正如Yekmer 在Yekmer的Posterous中所说的那样,图像不会存储在堆空间中。 为Android应用程序中的图像保留的空间非常小,并且有大量应用程序使用大量图像,可能很容易导致OutOfMemoryError。
我的问题
拥有大量的代码,我想知道是否有Android Studio中的一个工具,这将有助于我通过图像来跟踪使用的内存,并知道哪些步骤我的代码在使用的内存中增加最多。
我不需要什么
我知道如何让信息像ActivityManager.getMemoryInfo()
或Runtime.getRuntime().totalMemory()
,但我想他们也不会有用的,对不对?
一些想法
我试图理解由“adb shell dumpsys meminfo
”给出的数字,但我不知道这是否会是一个很好的开始...
您可以调用[ActivityManager.getMemoryClass()](http://developer.android.com/reference/android/app/ActivityManager.html#getMemoryClass%28%29)的内存量(以MB为单位)您的应用可以在给定设备上使用。 – Kai