【发布时间】:2013-08-06 09:47:44
【问题描述】:
由于我的应用使用大量图片,我在旧设备上遇到了著名的 OutOfMemoryError 问题。
根据 Android 开发者的说法,您的设备至少有 16MB 的堆 空间 (T-Mobile G1) 用于存储您的应用程序数据。但作为叶克默 在 Yekmer 的 Posterous 中说,图像不存储在堆空间中。 Android应用程序中为图像保留的空间非常 小,并且有一个使用大量图像的大应用程序,可能很容易 导致 OutOfMemoryError。
我的问题
有很多代码,我想知道 Android Studio 中是否有工具可以帮助我跟踪图像使用的内存,并了解我的代码的哪些步骤增加了最多使用的内存。
我不需要的东西
我知道如何获取ActivityManager.getMemoryInfo() 或Runtime.getRuntime().totalMemory() 之类的信息,但我想它们不会有用,对吧?
一些想法
我试图理解“adb shell dumpsys meminfo”给出的数字,但我不知道这是否是一个好的开始......
【问题讨论】:
-
您可以致电ActivityManager.getMemoryClass() 了解您的应用可以在给定设备上使用的内存量(以 MB 为单位)。
标签: android memory out-of-memory android-studio