如何使用android studio分析内存

最近从eclipse切换到android studio。 如何检查应用程序堆和android工作室内存分配? 在Eclipse中,我们有MAT在工作室有什么东西来检查堆转储,hprof文件?

我会用简单的步骤来解释它:

  1. 首先,你已经安装MAT ( 下载 )或使用:

    酿造木桶安装memoryanalyzer

  2. 在Android Studio中打开Android设备监视器或DDMS。

  3. select你的过程“com.example.etc ..”

  4. 点击进程列表上方的更新堆。

  5. 在右侧面板中,select“堆”选项卡。

  6. 点击原因GC。

  7. 点击进程列表上方的转储HPROF文件。

  8. 当我们下载文件HPROF时,我们必须打开terminal并运行这个命令来生成文件,用MAT打开它。

  9. 打开terminal并运行此命令

./hprof-conv path / file.hprof exitPath / heap-converted.hprof

命令“hprof-conv”位于sdk的platform-tools文件夹中。

  1. 准备和MAT可以打开并打开转换后的文件(heap-converted.hprof)。

还有另一种方法来看分配:

开始和停止分配跟踪

看结果

Android监视器 – >监视器(旁边的logcat) – >内存 – >转储Java堆

在这里输入图像描述

除了下面的步骤,我同意上面的答案

  1. 点击进程列表上方的更新堆。

  2. 在右侧面板中,select“堆”选项卡。

  3. 点击原因GC。

他们是没有必要的。只需在DDMS中select你的应用程序/进程,然后单击以转储HPROFconfiguration文件选项。 之后,按照上面的步骤。

还可以做以下的事情来获得更多的select,

  1. 转到工具
  2. 然后到Android
  3. 最后到Android设备监视器
  1. 首先安装MAT ,为了在Android Studio中使用它,你应该selectStand-alone Eclipse RCP Applications进行安装,这可以作为独立的工具

  2. 在Android Studio中,运行您的应用程序

  3. 在底部面板中,select6:Android ,然后selectMemory Monitor

  4. 单击Dump Java Heap

  5. 切换到捕获选项卡(在左侧面板中),您可以在Heap Snapshot文件夹中find.hprof文件

  6. 为了在MAT中打开.hprof文件,你需要转换格式:左键单击.hprof文件,然后selectExport to standard .hprof

  7. 打开MAT,然后打开已转换格式的.hprof文件

我从Eclipse切换到Android Studio,但是我仍然使用DDMS插件在Eclipse中使用MAT。 这很容易。

请注意,在最新的Android Studio(1.3+)中,堆(Android hprof)捕获已被移动到Android选项卡下的Memory Monitor子选项卡(如cVoronin的答案中的第一个图像)。

捕获完成后,它将自动保存到项目下的“捕获”目录中(如果您愿意,可以在事后重命名文件)。 hprof文件将自动在1.3+的新版hprof查看器中打开。

当然,你总是可以select将其转换为标准的hprof格式,并在MAT中查看。 只需右键单击捕获浏览器中的文件(在项目浏览器下),然后select转换。 和往常一样,由于不使用新的查看器,您将会丢失一些额外的Android特定信息,因为标准hprof不支持这些信息。

我知道这是一个相当古老的问题,但Android Studio 3现在有一个内置的分析器。

在这里查看文档: Android Studio 3.0中的Android Profiler