简单介绍如何应用DDMS协助开发Android Apps
2010-03-12 18:19
696 查看
DDMS 的全称是Dalvik Debug Monitor
Service,它为我们提供例如:为测试设备截屏,针对特定的进程查看正在运行的线程以及堆信息、Logcat、广播状态信息、模拟电话呼叫、接收
SMS、虚拟地理坐标等等。
DDMS 工具存放在SDK –
tools/路径下,可以直接双击ddms.bat运行,也可以通过terminal/console(CLS)输入ddms(在Mac或者Linux系
统中输入./ddms)启动程序。DDMS对Emulator和外接测试机有同等效用。如果系统检测到它们(VM)同时运行,那么DDMS将会默认指向
Emulator。
DDMS 的工作原理
DDMS将搭建起IDE与测试终端(Emulator 或者connected
device)的链接,它们应用各自独立的端口监听调试器的信息,DDMS可以实时监测到测试终端的连接情况。当有新的测试终端连接后,DDMS将捕捉到
终端的ID,并通过adb建立调试器,从而实现发送指令到测试终端的目的。
DDMS监听第一个终端App进程的端口为8600,APP进程将分配8601,如果有更多终端或者更多APP进程将按照这个顺序依次类推。
DDMS通过8700端口(”base port”)接收所有终端的指令。如果想了解更多资料 Configuring
your IDE to attach to port 8700 for debugging
。
通过File > Preferences查看DDMS相关设置,所有的参数设定将保存在
“$HOME/.ddmsrc”
下边通过GUI简单了解DDMS的一些功能:
Devices
在GUI的左上角可以看到标签为”Devices”的面板,这里可以查看到所有与DDMS连
接的终端的详细信息,以及每个终端正在运行的APP进程,每个进程最右边相对应的是与调试器链接的端口。因为Android是基于Linux内核开发的操
作平台,同时也保留了Linux中特有的进程ID,它介于进程名和端口号之间。
在面板的右上角有一排很重要的按键他们分别是Debug the selected
process、Update Threads、Update Heap、Stop Process和ScreenShot。
Debug
Selected Process
:用于表现被选择进程与调试器连接状态,如果进程前带有绿色表示,那么说明该进程的工程文件在当前
Workspace中处于打开状态,并允许我们开启调试器监听进程运行情况。
Update
Threads
:
用于查看当前进程所包含的线程。当选中任意进程后,点击这个命令可以在右侧面板的Threads标签里看到详细的线程运行情况,同时在被选中的进程名称后
边会出现显示线程信息标识。
Update
Heap
: 与上一个Update Threads类似,只不过这个命令用于查看当前进程堆栈内存的使用情况。
Stop
Process
: 这个应该非常容易理解,终止当前进程。
ScreenShot
:
截取当前测试终端桌面。
Emulator Control
通过这个面板的一些功能可以非常容易的使测试终端模拟真实手机所具备的一些交互功能,比
如:接听电话,根据选项模拟各种不同网络情况,模拟接受SMS消息和发送虚拟地址坐标用于测试GPS功能等。
Telephony Status
:
通过选项模拟语音质量以及信号连接模式。
Telephony Actions
:
模拟电话接听和发送SMS到测试终端。
Location Control
:
模拟地理坐标或者模拟动态的路线坐标变化并显示预设的地理标识。
Manually send individual longitude/latitude coordinates to the
device : 手动为终端发送二维经纬坐标。
Use a GPX file describing a route for playback to the device :
通过GPX文件导入序列动态变化地理坐标,从而模拟行进中GPS变化的数值。
Use a KML file describing individual placemarks for sequenced
playback to the device : 通过KML文件导入独特的地理标识,并以动态形式根据变化的地理坐标显示在测试终端。
Logcat
现实所有针对测试终端操作的日志记录,可以很明显的区分开警告信息和错误信息。
Service,它为我们提供例如:为测试设备截屏,针对特定的进程查看正在运行的线程以及堆信息、Logcat、广播状态信息、模拟电话呼叫、接收
SMS、虚拟地理坐标等等。
DDMS 工具存放在SDK –
tools/路径下,可以直接双击ddms.bat运行,也可以通过terminal/console(CLS)输入ddms(在Mac或者Linux系
统中输入./ddms)启动程序。DDMS对Emulator和外接测试机有同等效用。如果系统检测到它们(VM)同时运行,那么DDMS将会默认指向
Emulator。
DDMS 的工作原理
DDMS将搭建起IDE与测试终端(Emulator 或者connected
device)的链接,它们应用各自独立的端口监听调试器的信息,DDMS可以实时监测到测试终端的连接情况。当有新的测试终端连接后,DDMS将捕捉到
终端的ID,并通过adb建立调试器,从而实现发送指令到测试终端的目的。
DDMS监听第一个终端App进程的端口为8600,APP进程将分配8601,如果有更多终端或者更多APP进程将按照这个顺序依次类推。
DDMS通过8700端口(”base port”)接收所有终端的指令。如果想了解更多资料 Configuring
your IDE to attach to port 8700 for debugging
。
通过File > Preferences查看DDMS相关设置,所有的参数设定将保存在
“$HOME/.ddmsrc”
下边通过GUI简单了解DDMS的一些功能:
Devices
在GUI的左上角可以看到标签为”Devices”的面板,这里可以查看到所有与DDMS连
接的终端的详细信息,以及每个终端正在运行的APP进程,每个进程最右边相对应的是与调试器链接的端口。因为Android是基于Linux内核开发的操
作平台,同时也保留了Linux中特有的进程ID,它介于进程名和端口号之间。
在面板的右上角有一排很重要的按键他们分别是Debug the selected
process、Update Threads、Update Heap、Stop Process和ScreenShot。
Debug
Selected Process
:用于表现被选择进程与调试器连接状态,如果进程前带有绿色表示,那么说明该进程的工程文件在当前
Workspace中处于打开状态,并允许我们开启调试器监听进程运行情况。
Update
Threads
:
用于查看当前进程所包含的线程。当选中任意进程后,点击这个命令可以在右侧面板的Threads标签里看到详细的线程运行情况,同时在被选中的进程名称后
边会出现显示线程信息标识。
Update
Heap
: 与上一个Update Threads类似,只不过这个命令用于查看当前进程堆栈内存的使用情况。
Stop
Process
: 这个应该非常容易理解,终止当前进程。
ScreenShot
:
截取当前测试终端桌面。
Emulator Control
通过这个面板的一些功能可以非常容易的使测试终端模拟真实手机所具备的一些交互功能,比
如:接听电话,根据选项模拟各种不同网络情况,模拟接受SMS消息和发送虚拟地址坐标用于测试GPS功能等。
Telephony Status
:
通过选项模拟语音质量以及信号连接模式。
Telephony Actions
:
模拟电话接听和发送SMS到测试终端。
Location Control
:
模拟地理坐标或者模拟动态的路线坐标变化并显示预设的地理标识。
Manually send individual longitude/latitude coordinates to the
device : 手动为终端发送二维经纬坐标。
Use a GPX file describing a route for playback to the device :
通过GPX文件导入序列动态变化地理坐标,从而模拟行进中GPS变化的数值。
Use a KML file describing individual placemarks for sequenced
playback to the device : 通过KML文件导入独特的地理标识,并以动态形式根据变化的地理坐标显示在测试终端。
Logcat
现实所有针对测试终端操作的日志记录,可以很明显的区分开警告信息和错误信息。
相关文章推荐
- 简单介绍如何应用DDMS协助开发Android Apps
- 简单介绍如何应用DDMS协助开发Android Apps
- 简单介绍如何应用DDMS协助开发Android Apps
- 简单介绍如何应用DDMS协助开发Android Apps
- 使用Kotlin开发Android应用(I):简单介绍
- DDMS协助开发Android App(概括性介绍了DDMS,很好,转了过来)
- 【Android 应用开发】 ActionBar 样式具体解释 -- 样式 主题 简单介绍 Actionbar 的 icon logo 标题 菜单样式改动
- Android模拟内存紧张,应用被杀死如何模拟应用程序被杀掉? 更新:Daniel Lew指出,最简单的方法是在DDMS中点击”Stop Porcess”杀掉你的程序,在你调试程序的时候可以这样做。
- 【Android 应用开发】Android 网络编程 API笔记 - java.net 包 权限 地址 套接字 相关类 简单介绍
- Unity如何发布一个Android 的开发应用
- Android 最火高速开发框架AndroidAnnotations简单介绍
- [Android实例] Sensor传感器源码的阅读与应用开发简单实例
- android四大组件基础介绍及打电话,发短信简单应用 &单元测试
- Android应用开发中如何使用RSA加密算法对数据进行校验
- 如何使用Android SDK开发Android应用?
- 做应用开发的如何查看Android源码
- 【Android应用开发】-(16)如何绕开Google Play地区限制
- Android应用开发之你必须知道如何在Android4.0上开发多屏幕适配的应用
- Android开发_多媒体的简单应用
- Android——DDMS简单介绍