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

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.

主站蜘蛛池模板: 河曲县| 邻水| 鄂伦春自治旗| 南和县| 习水县| 张家川| 德保县| 青川县| 略阳县| 同心县| 资源县| 夏邑县| 祁东县| 安陆市| 辰溪县| 旺苍县| 登封市| 勃利县| 元氏县| 姚安县| 惠东县| 曲麻莱县| 连山| 洛南县| 吴旗县| 凤翔县| 谷城县| 尼勒克县| 修武县| 密云县| 工布江达县| 通城县| 罗城| 宁德市| 阳山县| 武胜县| 香河县| 融水| 汨罗市| 永川市| 冀州市|