Android之DDMS

DDMS 的全称是Dalvik Debug Monitor Service,即Dalvik调试监控服务,DDMS为IDE和Emultor(or GPhone)架起来了一座桥梁。是一个可视化的调试监控工具。它主要是对系统运行后台日志的监控,还有系统线程,模拟器状态的监控。此外,它还可以模拟收发短信,拨打电话和发送GPS位置信息等。

启动DDMS

DDMS 工具存放在SDK – tools/路径下,启动DDMS方法如下:

  1. 直接双击ddms.bat运行;
  2. 在Eclipes调试程序的过程中启动DDMS,在Eclipes中的界面如下:
    Eclipes-DDMS
    选择“Other”,界面如下:
    Open-Perspective
    双击DDMS就可以启动了。

DDMS对Emulator和外接测试机有同等效用。如果系统检测到它们(VM)同时运行,那么DDMS将会默认指向 Emulator。以上2种启动后的操作有些不一样,建议分别尝试下。

DDMS 的工作原理

DDMS将搭建起IDE与测试终端(Emulator 或者connected device)的链接,它们应用各自独立的端口监听调试器的信息,DDMS可以实时监测到测试终端的连接情况。当有新的测试终端连接后,DDMS将捕捉到 终端的ID,并通过adb建立调试器,从而实现发送指令到测试终端的目的。
DDMS-Device
DDMS监听第一个终端App进程的端口为8600,APP进程将分配8601,如果有更多终端或者更多APP进程将按照这个顺序依次类推。DDMS通过 8700端口(”base port”)接收所有终端的指令。

下边通过GUI详细了解DDMS的一些功能

Devices

在GUI的左上角可以看到标签为”Devices”的面板,这里可以查看到所有与DDMS连 接的终端的详细信息,以及每个终端正在运行的APP进程,每个进程最右边相对应的是与调试器链接的端口。因为Android是基于Linux内核开发的操 作平台,同时也保留了Linux中特有的进程ID,它介于进程名和端口号之间。
DDMS-Device
在面板的右上角有一排很重要的按键他们分别是Debug the selected process、Update Threads、Update Heap、Stop Process和ScreenShot。

Emulator Control

通过这个面板的一些功能可以非常容易的使测试终端模拟真实手机所具备的一些交互功能,比如:接听电话,根据选项模拟各种不同网络情况,模拟接受 SMS消息和发送虚拟地址坐标用于测试GPS功能等。
DDMS-Control
Telephony Status: 通过选项模拟语音质量以及信号连接模式。
Telephony Actions: 模拟电话接听和发送SMS到测试终端。
Location Control: 模拟地理坐标或者模拟动态的路线坐标变化并显示预设的地理标识,可以通过以下3种方式:

  • Manual: 手动为终端发送二维经纬坐标。
  • GPX: 通过GPX文件导入序列动态变化地理坐标,从而模拟行进中GPS变化的数值。
  • KML: 通过KML文件导入独特的地理标识,并以动态形式根据变化的地理坐标显示在测试终端。

Threads、Heap、File Exporler

DDMS-THF
这几项,我们在其他开发工具中也经常使用,就在不此详细说明了。通过File Exporler可以查看Android模拟器中的文件,可以很方便的导入/出文件。

Locate、Console

DDMS-LC
Locate:显示输出的调试信息,详见Android下如何调 试程序?
Console:是Android模拟器输出的信息,加载程序等信息;

使用DDMS模拟发送短信,操作过程如下:

在Emulator Control\Telephony Actions 中输入以下内容
DDMS-SMS
单击发送后,在Android模拟器中打开Messaging,看到下面的短信:
DDMS-Message
单击新短信,详细查看短信内容:
AVD-Message
中文显示为乱码,在未来的开发中,我们必须要注意中文字符的问题。

总结说明

DDMS是我们开发人员最好的调试工具,它将是每个从事Android开发的人员都不可缺少的。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值