AndroidStudio 中Memory控件台(显示器)提供了一个内存监视器。
我们可以通过它方便地查看应用程序的性能和内存使用情况,从而也就可以找到需要释放对象,查找内存泄漏等。主要功能有:
- 显示可用和已分配的Java存储器的随时间变化的曲线图。
- 显示垃圾回收(GC)随着时间的推移事件。
- 启动垃圾收集事件。
- 快速测试应用程序缓慢是否会涉及到过多的垃圾收集事件。
快速测试应用程序崩溃是否可能与运行内存
Memory控件台界面如图:
图中红框部分的按钮分别是:启动与关闭Memory监测按钮
- 手动触发GC按钮
- dump java heap 按钮,点击Android Studio就开始干活了,成功后会自动打开 hprof文件。
- start(stop) allocation tracking按钮先点击一次,然后会看到Memory Recorder开始转动,然后自己开始在APP上面做相应的操作。在合适的时间再点一次,结束记录。
最后这个问号按钮,点击后进入官方介绍文档。
AndroidStudio Memory使用流程:
1,运行要监控的程序(APP)后,打开Android Monitor控制台窗口,可以看到Memory控制台。
2,点击Memory控制台上Enable按钮,Memory控制台开始显示正在运行时程序的Memory使用情况。如上图中显示:- y轴显示以MB为单位的自由和分配内存。x轴表示经过的时间;它始于秒,然后分,秒等。
可用内存量,以MB为单位测量,显示在一个浅色,而分配的内存是较暗的颜色。 当有一个在分配的内存急剧下降,这表明一个垃圾回收事件。
3,单击启动GC启动GC图标。虚拟机发起的第一个垃圾回收事件。因为通常情况下,虚拟机是不会执行GC操作的,我们手动地进行GC操作来检测程序的内存使用等 情况。
4,点击Dump Java Heap按钮:点击Dump Java Heap后,APP会Freeze住。大概几十秒后,就会进入读取hprof文件的界面了,如图:
这个文件记录着我们应用程序内部的所有数据,可以通过MAT等工具查看分析。
参考博客:http://www.itnose.net/detail/6498688.html
5,点击Starg Allocation Tracking按钮。开始分配追踪,过一些时间后,点击Stop Allocation Tracking结束追踪的位置。这样就截取了一段要分析的内存,等待几秒钟AndroidStudio会给我们打开一个Allocation视图:
这个视图数据主要分析各个线程中的方法所占用内存的大小,从而可以找到需要优化的地方。
大概的使用方法这样,当然可以根据自己需要来进行对应地操作。
官方地址: https://developer.android.com/studio/profile/am-memory.html?utm_medium=android-studio#workflow
参考学习:http://www.csdn.net/article/2015-09-18/2825737/1