Android Debug Bridge (adb) is a versatile command-line tool that lets you communicate with an emulator instance or connected Android-powered device. It accepts commands to perform tests, actions, and more on your behalf.
Usage examples include checking whether an app has crashed, managing the software on the device (e.g., controlling app installations), retrieving system details (e.g., current version of Android), or managing other adb clients running on the same network.
A client, which sends commands. The client runs on your development machine. You can invoke a client from a command-line terminal by issuing an adb command.
A daemon (adbd), which runs commands on a device. The daemon runs as a background process on each device.
A server, which manages communication between the client and the daemon. The server runs as a background process on your development machine.
More Info: https://developer.android.com/studio/command-line/adb