Java Android内存/性能分析工具

Java Android内存/性能分析工具,java,android,performance,memory,profiling,Java,Android,Performance,Memory,Profiling,我是Android新手。标准Java内存和性能分析工具可以与Android一起使用吗 例如,我们可以创建一个heapdump文件并分析Android应用程序吗?或者使用Eclipse TPTP分析内存/性能 如果无法使用标准Java工具来实现此目的,那么是否有任何Android特定的内存和性能分析工具?如果您使用Eclipse,DDMS应该可以帮助您完成大部分需要的工作 DDMS提供了一种功能来跟踪分配给的对象 内存和以查看哪些类和线程正在分配 物体。这允许您实时跟踪对象所在的位置 在应用程序

我是Android新手。标准Java内存和性能分析工具可以与Android一起使用吗

例如,我们可以创建一个heapdump文件并分析Android应用程序吗?或者使用Eclipse TPTP分析内存/性能


如果无法使用标准Java工具来实现此目的,那么是否有任何Android特定的内存和性能分析工具?

如果您使用Eclipse,DDMS应该可以帮助您完成大部分需要的工作

DDMS提供了一种功能来跟踪分配给的对象 内存和以查看哪些类和线程正在分配 物体。这允许您实时跟踪对象所在的位置 在应用程序中执行某些操作时被分配。 这些信息对于评估内存使用情况很有价值,因为它可以 影响应用程序性能

要跟踪对象的内存分配,请执行以下操作:

在“设备”选项卡中,选择要启用的进程 分配跟踪。在“分配跟踪程序”选项卡中,单击 开始跟踪按钮以开始分配跟踪。在这一点上,, 您在应用程序中执行的任何操作都将被跟踪。单击“获取” 分配,以查看自 您单击了开始跟踪按钮。你可以点击Get 再次分配以附加到具有 已经分配了。要停止跟踪或清除数据并重新开始, 单击停止跟踪按钮。单击列表中的特定行以 请参阅更多详细信息,如方法和行号 分配对象的代码


市场上有现有的性能配置文件工具

通用工具,如SystemPanel应用程序-。它列出了CPU、内存和网络等性能

专业工具,如TaskSpy-。它列出了系统范围内的性能,并使您能够分析一个特定的运行进程。它真正有用的是,它使您能够
查看远程PC/mac/linux计算机的性能,同时目标测试应用程序仍然可以在手机/平板电脑上运行前台-它是无中断的

不可能直接使用标准Java工具。然而,如果我们从Android应用程序创建一个Heapdump,并将其转换为JavaSEHPROF格式后,我们可以使用Eclipse内存分析器来分析内存

可以直接读取Android堆转储,无需将其转换为JSE格式


免责声明:我的公司开发JProfiler。

此外,如果您进行移动web开发,您可能会发现Chrome远程调试器非常有用。似乎我们不能使用标准Java工具进行内存分析,所以正如您所指出的,可以使用DDMS。