一、Android Monitors
二、Heap Snapshot(基于Android studio)
Heap Snapshot用于获取Java堆内存详细信息,在Android studio中通过点击Dump Java Heap按钮生成一个hprof文件,点击进入Heap Snapshot面板,其具体列表意义如下:
Total Count:内存中该类的对象个数
Heap Count:堆内存中该类的个数
Size Of:物理大小
Shallow Size:该对象本身占用内存的大小
Retained Size:释放该对象后节省的内存大小
三、Heap Viewer
Heap Viewer可以查看App分配的内存大小和空闲内存大小。打开方式可以通过SDK中tools下的monitor打开,也可以在Android Device Monitor中查看。
三、MAT
MAT工具全称为Memory Analyzer Tool,是一款详细分析Java堆内存的工具,为了使用该工具,我们需要hprof文件,但是该文件不能直接被MAT使用,需要进行一步转化,可以使用hprof-conv命令来转化,但是Android studio可以直接转化,点击左侧Captures按钮,选择一个hprof文件,右击选择Export to standrad .hprof,然后打开MAT工具,选择File-Open File选择刚生成的hprof文件。
四、Allocation Tracking
Allocation Tracking用于追踪内存分配情况。
打开方式:①在android studio中通过点击start Allocation Tracking 开始追踪,再次点击停止追踪,会生成一个以alloc结尾的文件,这个文件记录了这次追踪到的所有数据,展示了这次操作所有的内存分配情况。
②在Android Device Monitor中选择Allaction Tracking,点击start Tracking,执行操作后点击Get Allocating,获取到内存的分配情况。各名称意义如下:
五、TrackView
用于更详细的查看内存的分配情况,从代码层面分析性能问题,针对每个方法来分析。
打开方式:Android Device Monitor-
六、Lint工具
点击Analyze-Inspect Code