Android Device Monitor是一个独立的工具,可以对Android应用进行调试和分析。Android Device Monitor无需安装整合在一个IDE中,比如像Android Studio,提供如下工具:
1、 DDMS
2、 Tracer for OpenGL ES
3、 Hierarchy Viewer
4、 Systrace
5、 Traceview
6、 Pixel Perfect magnification viewer

1:DDMS
(1)Emulator Control
通过Emulator Control 我们可以模拟传感器,来电等数据。当然,Emulator Contorl只有Google原版镜像才可以用,如果模拟器里或手机里不是Google源码镜像,这里的内容都会变成灰色。

模拟来电

(2)File Explorer
File Explorer可以让我们浏览手机里的文件。

(3)System Information

在这里我们可以看到CPU、内存占用情况。

(4)屏幕截图

二 Tracer for OpenGL ES

Tracer for OpenGL ES是Android SDK中新增加的开发工具,可逐帧(准确得说是逐函数)记录app用OpenGL ES的绘制过程。它提供了每个OpenGL函数调用的消耗时间,所以很多时候用来作performance分析。但因为其强大的记录功能,在分析渲染出错的问题时(尤其是没有源代码的情况下),它也可算是一大神器。缺点有二:一是只支持Android 4.1及以上的设备,二是采集数据时app运行会变得很慢(这可能会影响app的行为)。

简要使用步骤:

  1. 先连接设备,然后打开Device Monitor(在android-sdk/tools/monitor) 或Eclipse(装了ADT的话),接着Window-> Open Perspective -> Other -> Tracer for OpenGL ES。
  2. 点击,填写要分析的app信息,这里面的Package名和Activity名都可以通过解压Apk文件从AndroidManifest.xml中得到,或是通过打开该app后用$ adb shell dumpsys activity | grep app名得到。然后能打勾的全打上勾,点Trace开始。
  3. 觉得差不多了点”Stop Tracing”结束,Trace log文件就会生成在预定的目录下。
  4. 点击,选中生成的Trace log文件,然后就可以分析了。

三 Hierarchy View

按Devices里的按钮Dump View Hierarchy for UI Automator可以获得当前屏幕上面的元素组成。

四 Systrace

五 Traceview
TraceView 是 Android SDK 中内置的一个工具,它可以加载 trace 文件,用图形的形式展示代码的执行时间、次数及调用栈,便于我们分析。

trace 文件是 log 信息文件的一种,可以通过代码,Android Studio,或者 DDMS 生成。

使用TraceView主要有两种方式:

1 最简单的方式就是直接打开DDMS,选择一个进程,然后按上面的“Start Method Profiling”按钮,等红色小点变成黑色以后就表示TraceView已经开始工作了。然后我就可以滑动一下列表(现在手机上的操作肯定会很卡,因为Android系统在检测Dalvik虚拟机中每个Java方法的调用,这是我猜测的)。操作最好不要超过5s,因为最好是进行小范围的性能测试。然后再按一下刚才按的按钮,等一会就会出现上面这幅图,然后就可以开始分析了。

2 第2种方式就是使用android.os.Debug.startMethodTracing();和android.os.Debug.stopMethodTracing();方法,当运行了这段代码的时候,就会有一个trace文件在/sdcard目录中生成,也可以调用startMethodTracing(String traceName) 设置trace文件的文件名,最后你可以使用adb pull /sdcard/test.trace /tmp 命令将trace文件复制到你的电脑中,然后用DDMS工具打开就会出现第一幅图了

这5中是ADM最常用的功能区了,在DDMS有很多经常需要使用的adb命令,有什么更具体的技术问题,我们可再次交流,以上有没有讲到的,还望指出来,一起改进!

https://github.com/huchun

更多相关文章

  1. Python3原生编写月份计算工具
  2. 一款常用的 Squid 日志分析工具
  3. GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
  4. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  5. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
  6. android JNI 入门
  7. android 错误信息大整理
  8. Android(安卓)用Animation-list实现逐帧动画
  9. Android(安卓)APK 的反编译

随机推荐

  1. 一、Android(安卓)NDK编程预备之Java jni
  2. Android视频解码及渲染
  3. Android(安卓)应用安装流程初探
  4. 【ALearning】第五章 Android相关组件介
  5. onContextItemSelected 与 onMenuItemSel
  6. Volley的简单使用
  7. android 的一些参数
  8. Android(安卓)Studion样式中自带的三个it
  9. Intent打开各种类型文件
  10. Android中Fragment之间replace(替换)的动画