Starting March 27, 2025, we recommend using android-latest-release
instead of aosp-main
to build and contribute to AOSP. For more information, see Changes to AOSP.
adbd
Stay organized with collections
Save and categorize content based on your preferences.
The adbd module manages command-line adb and IDE debugging sessions. This module
is updatable, meaning it can receive updates to functionality outside of the
normal Android release cycle.
Modularizing adbd enables faster delivery of performance improvements (those
made in previous years and new improvements yet to come), bug fixes (such as
several power-drain bugs, including adbd continuing at 100% of a CPU until the
battery depletes), and features that haven't been backported to older versions
of Android. Such improvements contribute to adbd reliability, which is critical
for automated testing where failures can force app developers and OEMs to
manually replug/restart offline devices. Reliability issues also affect factory
setup (OEMs) and board bringup (SoC vendors).
Module boundary
For Android 12 and higher, the adbd module code is
packages/modules/adbd
.
For Android 11 and lower, the adbd module boundaries
are /system/core/adb
and /system/bin/adbd
.
The adbd module (com.android.adbd
) is in
APEX format and is available for devices
running Android 11 or higher.
Module dependences
The adbd module depends on the following.
Java Debug Wire Protocol (JDWP) debugging protocol with Android runtime. adbd
dynamically links against libadbconnection_server
.
Authentication with system_server
. adbd dynamically links against
libadbd_auth
.
Customization
The adbd module doesn't support customization.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-06-12 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-06-12 UTC."],[],[],null,["# adbd\n\nThe adbd module manages command-line adb and IDE debugging sessions. This module\nis updatable, meaning it can receive updates to functionality outside of the\nnormal Android release cycle.\n\nModularizing adbd enables faster delivery of performance improvements (those\nmade in previous years and new improvements yet to come), bug fixes (such as\nseveral power-drain bugs, including adbd continuing at 100% of a CPU until the\nbattery depletes), and features that haven't been backported to older versions\nof Android. Such improvements contribute to adbd reliability, which is critical\nfor automated testing where failures can force app developers and OEMs to\nmanually replug/restart offline devices. Reliability issues also affect factory\nsetup (OEMs) and board bringup (SoC vendors).\n\nModule boundary\n---------------\n\nFor Android 12 and higher, the adbd module code is\n`packages/modules/adbd`.\n\nFor Android 11 and lower, the adbd module boundaries\nare `/system/core/adb` and `/system/bin/adbd`.\n\nModule format\n-------------\n\nThe adbd module (`com.android.adbd`) is in\n[APEX](/docs/core/ota/apex) format and is available for devices\nrunning Android 11 or higher.\n\nModule dependences\n------------------\n\nThe adbd module depends on the following.\n\n- Java Debug Wire Protocol (JDWP) debugging protocol with Android runtime. adbd\n dynamically links against `libadbconnection_server`.\n\n- Authentication with `system_server`. adbd dynamically links against\n `libadbd_auth`.\n\nCustomization\n-------------\n\nThe adbd module doesn't support customization."]]