17

我试图分析一个让我疯狂数周的内存泄漏,我发现了 eclipseMAT工具可以帮助你找出问题所在,问题是我发现的每一个教程都说我需要转换格式从 dalvik 到 HPROF格式的文件,但是我找不到一个教程来解释如何实际做到这一点,而是我得到了像这样的模糊的东西

现在您将获得的文件不符合“标准”Sun .hprof 格式,而是以 Dalvik 自己的格式编写的,您需要对其进行转换:

hprof-conv heap-dump-tm-pid.hprof 4mat.hprof

这实际上是什么意思?我点击什么?我要去哪?我完全迷失和沮丧,任何帮助都会有很长的路要走,谢谢。

4

2 回答 2

33

听起来您需要使用hprof-conv位于[Android-SDK]\platform-tools.

要在 Windows 上执行此操作:

  1. WINKEY+R并输入cmd

  2. 输入:

    cd "C:\android-sdk\platform-tools"(或任何包含您的 Android sdk 的目录)

  3. 假设你在桌面上有你的 Dalvik 文件(我只是在猜测目录),输入:

    hprof-conv "C:\Users\Edmund\Desktop\heap-dump-tm-pid.hprof" "C:\Users\Edmund\Desktop\4mat.hprof"

  4. 这将生成您可以使用的标准格式 HPROF 文件,称为4mat.hprof

于 2013-01-05T04:16:34.787 回答
3

只是说:您不需要明确地使用.hprof文件转换hprof-conv. MAT会自动为您执行此操作- 如此处所述。在日食中,

  1. 打开首选项窗口,
  2. 导航到Android > DDMS
  3. 并将HPROF 操作更改为"Open in Eclipse"

在此处输入图像描述

于 2014-09-04T19:02:58.140 回答