官术网_书友最值得收藏!

Dalvik Debug Monitor Server

The Dalvik Debug Monitor Server (DDMS), whether it's accessed through the standalone application or the Eclipse perspective with the same name, provides handy features for inspecting, debugging, and interacting with emulator and device instances. You can use DDMS to inspect running processes and threads, explore the filesystem, gather heap and other memory information, attach debuggers, and even take screenshots. For emulators, you can also simulate mock location data, send SMS messages, and initiate incoming phone calls:

As the preceding screenshot shows, DDMS can primarily track, update, and display the following information:

  • All running processes
  • All running threads per process
  • Consumed heap per process
  • All log messages

On Android, every application runs in its own process, each of which runs in its own virtual machine. The debugger can be attached to the exposed port of VM. DDMS connects to adb on start. On successful connection, a VM monitoring service is created between adb and DDMS, which informs DDMS upon starting and ending a VM on the device. DDMS retrieves the VM's process ID via adb, and opens a connection to the VM's debugger when there is an active VM running through the adb daemon on the device. DDMS can now communicate to the VM using a custom wire protocol.

DDMS also listens on the default debugging port, called base port. The base port is a port forwarder, which can accept VM traffic from any debugging port and forward it to the debugger. The traffic that is forwarded is determined by the currently selected process in the DDMS Devices view.

主站蜘蛛池模板: 阳江市| 长宁县| 泽州县| 抚州市| 宿松县| 烟台市| 盐城市| 武城县| 溧阳市| 松桃| 蕉岭县| 涞水县| 华坪县| 化州市| 宁河县| 广汉市| 鄂尔多斯市| 甘南县| 渭源县| 韶关市| 基隆市| 襄城县| 聂荣县| 鄂伦春自治旗| 永宁县| 霍邱县| 平山县| 平和县| 长沙市| 噶尔县| 汾阳市| 郸城县| 怀集县| 荆州市| 巴青县| 兴义市| 定陶县| 阿拉善右旗| 清流县| 寻乌县| 福清市|