DDMS全称:Dalvik Debug Monitor
一、DDMS的作用:
它提供截屏,查看线程和堆的信息,logcat,进程,广播状态信息,模拟来电呼叫和短信,虚拟地理坐标等等。
二、DDMS怎样工作:
1、每一个Android应用都运行在一个Dalvik虚拟机实例里,而每一个虚拟机实例都是一个独立的进程空间。虚拟机的线程机制,内存分配和管理,Mutex等等都是依赖底层操作系统而实现的。所有Android应用的线程都对应一个Linux线程,虚拟机因而可以更多的依赖操作系统的线程调度和管理机制。
2、DDMS在IDE与设备或模拟器之间的起着中间人的角色。
3、DDMS启动时会与ADB之间建立一个device monitoring service用于监控设备。当设备断开或链接时,这个service就会通知DDMS。
4、当一个设备链接上时,DDSM和ADB之间又会建立VM monitoring service用于监控设备上的虚拟机。
5、通过ADB Deamon与设备上的虚拟机的debugger建立链接,这样DDMS就开始与虚拟机对话了。
三、端口:
1、对于设备上每个虚拟机的debugger, DDMS都会开启一个监听端口。端口从8600开始。
2、8700端口
四、左边面板
1、左边显示了所有当前能找到的所有模拟器或设备列表和每个设备当前正在运行的虚拟机列表。虚拟机是按程序的包命来显示的。
2、通过这些列表可以找到运行着想调试的activity的虚拟机。每个虚拟机旁边的是“debugger pass-through”端口,链接到其中一个端口就会链接到设备上对应的虚拟机。不管如何,在用DDMS时,只需要链接到8700端口,因为DDSM转发所有的通信到当前选择的虚拟机。这样,就不用在每次切换虚拟机是重新配置debugger端口。
3、当一个正在运行的程序调用waitForDebugger()函数时,客户端名字旁边会显示一个红色的icon,知道debugger连上对应的虚拟机,这是debugger会变成绿色。
4、如果看到叉icon,着意味着DDMS用于不能打开虚拟机的端口而不能建立debugger与虚拟机建立连接。如果看到所有的虚拟机是这样,很可能是有另外一个DDSM实例在运行。
五、右边面板
1、info 这里显示关于选中的VM的一般的信息,包括进程ID,包名,和虚拟机版本。
2、Threads 线程视图列出了此进程的所有线程。
ID:虚拟机分配的唯一的线程ID,在Dalvik里,它们是从3开始的奇数。
Tid:linux的线程ID,For the main thread in a process, this will match the process ID.
Stauts:线程状态,
running:正在执行程序代码
sleeping:执行了Thread.sleep()
monitor:等待接受一个监听锁。
wait:Object.wait()
native:正在执行native代码
vmwait:等待虚拟机
zombie:线程在垂死的进程
init:线程在初始化(我们不可能看到)
starting:线程正在启动(我们不可能看到)
utime:执行用户代码的累计时间
stime:执行系统代码的累计时间
name:线程的名字
3、VM Heap
展示一些堆的状态,在垃圾回收其间更新。当选定一个虚拟机时, VM Heap视图不能显示数据,可以点击右边面包上的带有绿色的”Show heap updates”按钮,然后在点击”Cause GC “实施垃圾回收更新堆的状态。
4、Allocation Tracker 在这个视图里,我们可以跟踪每个选中的虚拟机的内存分配情况。点击”Start Tracking”后点击”Get Allocations “就可以看到。
5、Emulator Control 在这里,可以模拟一些设备状态和行为。
Telephony Status:改变电话语音和数据方案的状态,模拟不同的网络速度。
TelePhony Actions:发送模拟的电话呼叫和短信到模拟器。
Location Controls:发送虚拟的定位数据到模拟器里,我们就可以执行定位之类的操作。可以收工的在Manual里输入经度纬度发送到模拟器,也可以通过GPX和KML文件。
六、其他
1、File Explorer
通过Device > File Explorer 就打开File Explorer。这里可以浏览文件,上传上载删除文件,当然这是有相应权限限制的。
2、Screen Capture
通过Device > Screen Capture 就可以截图。
3、Exploring Processes
通过Device > Show process status ,这里的信息是通过shell命令”ps -x”输出的。
4、Examine Radio State
通过Device > Dump radio,检测广播状态。
5、Stop a Virtual Machine
通过Actions > Halt VM ,停止一个虚拟机。
相关推荐
**Android调试工具DDMS详解** **一、DDMS的定义与作用** DDMS,全称为Dalvik Debug Monitor Service,是Android开发中一个重要的调试工具,它为开发者提供了丰富的功能,如截屏、查看线程和堆信息、Logcat日志查看...
基于Android开发环境的调试工具DDMS DDMS(Dalvik Debug Monitor Service)是Android开发环境中主要的调试工具,它提供了许多调试功能,包括监控应用程序的运行并打印日志、为测试设备截屏、logcat、针对特定进程...
Android 调试工具ddms的devices栏目存在一个功能叫做start method profiling,此按钮顾名思义是启动method profiling的,而Android的Method Profiling功能,是可以在一段时间内记录所有运行过的函数,最后生成一个...
Android 调试工具ddms的devices栏目存在一个功能叫做start method profiling,此按钮顾名思义是启动method profiling的,而Android的Method Profiling功能,是可以在一段时间内记录所有运行过的函数,最后生成一个...
DDMS(Dalvik Debug Monitor Service)是 Android 调试监控服务,是一个图形化的调试工具。DDMS 提供了多种功能,包括: 1. Devices:可以查看到当前运行的 Emulator 和其内运行的应用。 2. Emulator control:仿真...
**Dalvik Debug Monitor Service (DDMS)** 是Android开发者必备的一款强大的调试工具。它不仅能够帮助开发者监控Android设备或模拟器的状态,还能提供一系列实用的功能,如截屏、查看线程及堆栈信息、模拟电话呼叫、...
"Android调试工具"是一系列专门用于检测、分析和修复Android应用问题的软件工具的集合。这些工具通常包括但不限于Logcat、DDMS(Dalvik Debug Monitor Service)、HPROF、Traceview等。在本篇中,我们将主要聚焦于...
Dalvik调试监视服务(Dalvik Debug Monitor Service, DDMS)是Android SDK提供的一个强大的调试工具,它集成了任务管理器、文件浏览器、模拟控制台以及日志控制台等功能。通过DDMS,开发者不仅可以监控模拟器或真实...
### Android调试工具DDMS中的Method Profiling功能 DDMS(Dalvik Debug Monitor Service)是Android SDK提供的一款用于调试Android应用程序的强大工具,它包括多种功能模块,其中“Devices”栏目下的“Start Method...
本主题将深入探讨“Android调试-adb-zip版本”这个概念,以及如何使用adb的不同版本来提升工作效率。 首先,`adb`是Android SDK平台工具的一部分,通常以zip格式发布,例如`platform-tools_r35.0.0-windows.zip`。...
首先,Android调试主要依赖于Android Studio集成开发环境(IDE)提供的调试工具。这些工具包括Dalvik Debug Monitor Service (DDMS),Logcat,以及现代版本中更强大的Android Profiler。DDMS提供了模拟器控制、内存...
Android调试工具DDMS可以帮助获取页面加载时间,而Emmagee则用于监控内存和CPU使用。 稳定性测试则是对App在长时间运行和极端条件下的表现进行评估。Android中的Monkey测试工具通过模拟大量随机用户操作,发现可能...
通过学习“006__android 之DDMS的使用”视频教材,开发者可以掌握这些强大的调试工具,从而更有效地进行Android应用的开发和调试工作。在实践中不断探索和熟练运用DDMS,将大大提高开发效率和应用质量。
在eclipse上利用avd调试android程序是非常浪费时间的一件事,apk上传安装都要等很长时间,avd运行速度也差,运行计算比较多的程序就有问题了。如果用真机调试就快多了,但连接usb线又非常不方便,有了这个程序 你就...
总之,“ddms单文件提取版”是一个高效、便捷的安卓调试工具,它简化了调试流程,让开发者能够更加专注于问题的解决,提升开发效率。无论你是初学者还是经验丰富的开发者,这个工具都能成为你手中的利器,帮助你在...
5. **调试工具集成**:QView与常见的Android调试工具(如DDMS、Traceview)集成,使得开发者可以在一个统一的平台上进行多维度的调试工作。 6. **日志分析**:QView能够收集和分析系统日志,快速定位问题和异常,...
其他 Android 工具,如 ADT 插件和 DDMS,也可以产生 adb 客户端。 2. 服务器:在设备或模拟器上作为后台进程运行的服务器,负责管理客户端与运行于模拟器或设备上的 adb 守护程序(daemon)之间的通信。 3. 守护...
**DDMS**(Dalvik Debug Monitor Service)是Android SDK中的一个重要工具,主要用于应用程序的调试与性能监控。它能够帮助开发者进行一系列的操作,如查看正在运行的应用程序状态、监视CPU和内存使用情况、截取屏幕...