Joined
·
2,271 Posts
Android Debug Bridge (adb) is a versatile tool lets you manage the state of an emulator instance or Android-powered device. It is a client-server program that includes three components: * A client, which runs on your development machine. You can invoke a client from a shell by issuing an adb command. Other Android tools such as the ADT plugin and DDMS also create adb clients. * A server, which runs as a background process on your development machine. The server manages communication between the client and the adb daemon running on an emulator or device. * A daemon, which runs as a background process on each emulator or device instance.When you start an adb client, the client first checks whether there is an adb server process already running. If there isn't, it starts the server process. When the server starts, it binds to local TCP port 5037 and listens for commands sent from adb clients?all adb clients use port 5037 to communicate with the adb server.The server then sets up connections to all running emulator/device instances. It locates emulator/device instances by scanning odd-numbered ports in the range 5555 to 5585, the range used by emulators/devices. Where the server finds an adb daemon, it sets up a connection to that port. Note that each emulator/device instance acquires a pair of sequential ports ? an even-numbered port for console connections and an odd-numbered port for adb connections. (source found here)