如何使用android studio分析内存
最近从eclipse切换到android studio。 如何检查应用程序堆和android工作室内存分配? 在Eclipse中,我们有MAT在工作室有什么东西来检查堆转储,hprof文件?
我会用简单的步骤来解释它:
-
首先,你已经安装MAT ( 下载 )或使用:
酿造木桶安装memoryanalyzer
-
在Android Studio中打开Android设备监视器或DDMS。
-
select你的过程“com.example.etc ..”
-
点击进程列表上方的更新堆。
-
在右侧面板中,select“堆”选项卡。
-
点击原因GC。
-
点击进程列表上方的转储HPROF文件。
-
当我们下载文件HPROF时,我们必须打开terminal并运行这个命令来生成文件,用MAT打开它。
-
打开terminal并运行此命令
./hprof-conv path / file.hprof exitPath / heap-converted.hprof
命令“hprof-conv”位于sdk的platform-tools文件夹中。
- 准备和MAT可以打开并打开转换后的文件(heap-converted.hprof)。
还有另一种方法来看分配:
Android监视器 – >监视器(旁边的logcat) – >内存 – >转储Java堆
除了下面的步骤,我同意上面的答案
-
点击进程列表上方的更新堆。
-
在右侧面板中,select“堆”选项卡。
-
点击原因GC。
他们是没有必要的。只需在DDMS中select你的应用程序/进程,然后单击以转储HPROFconfiguration文件选项。 之后,按照上面的步骤。
还可以做以下的事情来获得更多的select,
- 转到工具
- 然后到Android
- 最后到Android设备监视器
-
首先安装MAT ,为了在Android Studio中使用它,你应该select
Stand-alone Eclipse RCP Applications
进行安装,这可以作为独立的工具 -
在Android Studio中,运行您的应用程序
-
在底部面板中,select
6:Android
,然后selectMemory Monitor
-
单击
Dump Java Heap
-
切换到捕获选项卡(在左侧面板中),您可以在
Heap Snapshot
文件夹中find.hprof
文件 -
为了在MAT中打开
.hprof
文件,你需要转换格式:左键单击.hprof
文件,然后selectExport to standard .hprof
-
打开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