原文链接:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=275774

一、简介
DDMS 的全称是DalvikDebug Monitor Service,是 Android 开发环境中的Dalvik虚拟机调试监控服务。提供测试设备截屏、查看特定进程正在运行的线程以及堆信息、Logcat、广播状态信息、模拟电话呼叫、模拟接收及发送SMS、虚拟地理坐标等服务。
二、启动
Eclipse中启动方法:
1、点击右上角 DDMS图标
2、没有DDMS图标,使用菜单栏window→open perspective→other选择
DDMS从安装目录中启动:
SDK\tools\ddms.bat
使用 SDK\tools\monitor.bat可以启动 Android debug monitor与 DDMS
功能相同
三、工作原理
DDMS将IDE与测试终端(Emulator或者connected device)建立连接,各自使用独立的端口监听调试器的信息,DDMS可以实时监测到测试终端的连接情况。当有新的测试终端连接后,DDMS可以捕捉终端ID,并通过adb建立调试器,从而实现发送指令到测试终端的目的。
DDMS监听第一个终端 App进程的端口为 8600, APP进程将分配 8601,如果有更多终端或者更多 APP进程将按照这个顺序依次类推。 DDMS通过 8700端口(” base port”)
接收所有终端的指令。
四、相关功能
左侧的面板上提供了相应功能的按钮,从左往右依次是: Debug the selected process、 Update Heap、 Dump HPROF File、 Cause GC( Garbage Collection)、 Update Threads、 Start Method Profiling、 Stop Process和 Screen Capture
右侧显示相应的监测信息并进行文件管理
 
 
        1、  截屏
2、     手机文件管理,如果虚拟机分配了 SD卡空间或真机挂载了 SD卡可以管理 SD中的文件。从设备复制文件,在文件浏览器中找到该文件,然后单击“ Pull file”按
钮。要复制一个文件到设备上的文件资源管理器“ Push file
”按钮。
       3、  获取进程以及内存信息
进程信息
获取进程信息需要点击左侧Update Threads按钮,然后在左侧显示相应的进程信息,
包括进程的名称、ID、状态等重要信息
内存信息
需要点击Update Heap,在Heap界面下,上部显示堆的详细信息,点击Cause GC进行垃圾回收,当完成后,可以看到一组对象类型和为每种类型已分配的内存,点击列表中的一个对象类型,为该种特定内存大小的对象分配的数量。
Allocation Tracing为内存分配过程跟踪,可跟踪系统分配内存的情况。
关于Dump HPROF File按钮的相关简介
heap dump就是一个程序heap的快照,它保存为一种叫做HPROF的二进制格式。Dalvik用的也是类似的格式,但是不完全一样。这里是Java的HPROF工具。有很多方法去生成一个运行时应用程序的heap dump。其中一种就是使用在DDMS里边的Dump HPROF file按钮。如果想产生更精确的dump数据,可以在程序中使用android.os.Debug.dumpHprofData() 方法。
4、  模拟拨入电话,模拟接收短信
模拟器接收模拟拨入电话的效果
模拟器接收模拟发送短信的效果,中文乱码
5、  虚拟地理坐标
如果您的应用程序依赖于位置的手机,你可以有的DDMS送您的设备或AVD一个模拟的位置。这是非常有用的,如果你想测试你的应用程序的特定位置的功能,而不必实际移动的不同方面。
您可以使用下面的地理位置数据类型:
手动设置(Manual)位置 - 通过手动指定十进制或六十进制的经度和纬度值。
GPX - GPS交换文件
KML -Keyhole标记语言文件
6、  网络状态获取
在Android 4.0, DDMS 具备监控详细的网络使用情况的功能,使得它可以跟踪您的应用程序的网络请求。使用这个工具,你可以监视应用程序的数据传输,并适当优化的底层代码。
7、  系统信息获取
包括三部分CPU相关信息(CPU load)、内存使用信息(MemoryUsage)、框架渲染时间信息(Frame Render Time)
CPU load
Memory Usage
Frame Render Time
测试使用模拟器

[开发工具] 史上最全系列之开发环境搭建之DDMS相关推荐

  1. .Net魔法堂:史上最全的ActiveX开发教程——发布篇

    一. 前言 接着上一篇<.Net魔法堂:史上最全的ActiveX开发教程--开发篇>,本篇讲述如何发布我们的ActiveX. 二.废话少讲,马上看步骤! 1. 打包  C#开发的Activ ...

  2. .Net魔法堂:史上最全的ActiveX开发教程——部署篇

    一.前言 接<.Net魔法堂:史上最全的ActiveX开发教程--发布篇>,后我们继续来部署吧! 二. 挽起衣袖来部署   ActiveX的部署其实就是客户端安装ActiveX组件,对未签 ...

  3. 史上最全系列 | 大数据框架知识点汇总(资源分享、还不快拿去)

    前言 大家好,我是土哥 写文章整整 五个月 了,在这期间写了很多篇高质量文章,每一篇都在 1000+ 阅读以上,为了让各位小伙伴更好的学习和面试,我将自己 发表的文章 以及 未发表的文章 全部汇总成一 ...

  4. 史上最全的Android开发学习教程集锦【初学者】

    根据Google的报告,截止2017年5月为止,Android活跃用户已超过20亿,并还在持续增长中.Android系统在几个主要的市场上已超过了iOS系统,特别是在美国,欧洲和日本,然而苹果确实在中 ...

  5. 新手必看,史上最全的iOS开发教程集锦,没有之一!

    最近大火的iPhone XS Max和iPhone XS,不知道有没有同学已经下手了呢?一万三的价位确实让很多人望而却步啊.据说为了赢得中国的用户,专门出了双卡双待的,可想而知中国市场这块" ...

  6. 史上最全的常用开发工具类收集Android

    API 银行卡管理 → BankCheck checkBankCard : 校验银行卡卡号是否合法 getBankCardCheckCode: 从不含校验位的银行卡卡号采用 Luhm 校验算法获得校验 ...

  7. 帆软报表在已经搭载服务器上开发_史上最全企业数据产品选型对比(含数仓、报表、BI、中台、数据治理)...

    前言 这个从上至下都在强调数字化转型的时代,越来越多公司重视数据,也越来越多的企业有数据建设的需求. 企业无论做任何数据工作,必然要有一定的信息化基础,也要有数据化建设的基础,少不了数据平台.数据应用 ...

  8. 手把手教你:【史上最全】C++开发环境搭建:win732位下VS2010+Boost_1_53_0+Qt5.2+MySql搭建

    我想说:这两个多星期走得很辛苦,没有人告诉我win732位系统下VS2010+Boost_1_53_0+Qt5.2+MySql开发环境如何搭建,自己一步一步摸索,重装了无数遍系统,试了几十种方法,才艰 ...

  9. 如何快速上手小程序开发(史上最全)

    01 开发前准备 登录微信小程序官网:mp.wx.qq.com(这里以微信小程序为例) 申请属于你个人的小程序账号(分为个人和企业,在这申请个人很容易) 按照文档,下载微信开发者工具,进行登录,创建一 ...

最新文章

  1. 基于深度学习的物体抓取位置估计
  2. 10-CSS基础-CSS选择器
  3. 实现自己的连接池(一)
  4. 2021湖南高考艺考成绩查询,2021届湖南艺考生联考成绩查询时间安排
  5. 百度App Objective-C/Swift 组件化混编之路(一)
  6. 关于vue.js element ui 表单验证 this.$refs[formName].validate()的问题
  7. client中周期性边界_(整理)周期性边界条件.
  8. sql 获取数据库字段信息_使用DBATools获取SQL数据库详细信息
  9. MongoDB数据访问[C#]
  10. Broadleaf概念
  11. 点歌机显示一直弹出连接服务器,点歌机老是显示正在连接云服务器
  12. Julia: 关于下载库时WinRPM的Bug
  13. 视频图像格式YUV详解
  14. Sniffer Pro
  15. java二叉树详解_最全二叉树:完整详解二叉树的遍历以及完全二叉树等6种二叉树...
  16. 未来战警 中的计算机词汇,计算机常用单词词汇
  17. Project中最常用的注意点
  18. 可能是国内第一篇全面解读Java现状及趋势的文章
  19. 2017.9.21 HTML学习总结---多媒体播放系统设计
  20. elasticsearch压力测试工具之ESrally使用说明

热门文章

  1. 解决jquery点击事件后的点击事件执行次数会累加
  2. Lambda表达式简介
  3. iOS开发系列--通讯录、蓝牙、内购、GameCenter、iCloud、Passbook系统服务等等
  4. python量化交易:Joinquant_量化交易基础【四】:下单、函数、API
  5. Shell数组添加元素注意事项
  6. 什么叫干扰?有何危害?
  7. 华为鸿蒙系统操作教程_华为鸿蒙系统好用吗 华为鸿蒙系统有什么优缺点
  8. api工厂小程序好物圈插件使用教程
  9. 「PHP」原生PHP
  10. 电脑图标java开发工具素材_IconJar for Mac(图标素材管理工具) v2.3.0