The Android SDK tools available from the
SDK Manager provide
additional command-line tools to help you during your Android development.
The tools are classified into two groups: SDK tools
and platform tools. SDK tools are platform independent and are required no matter which
Android platform you are developing on. Platform tools are customized to support the features of the
latest Android platform.
The SDK tools are installed with the SDK starter package and are periodically updated.
The SDK tools are required if you are developing Android applications. The most important SDK tools
include the Android SDK Manager (
android sdk), the AVD Manager (
avd) the emulator (
emulator), and the Dalvik Debug Monitor Server
ddms). A short summary of some frequently-used SDK tools is provided below.
- Android Virtual Device Manager
- The AVD Manager provides a graphical user interface in which you can create
and manage Android Virtual Devices (AVDs) that run in the Android Emulator.
- Android Emulator (emulator)
- A QEMU-based device-emulation tool that you can use to debug and test
your applications in an actual Android run-time environment.
- Helps you create a disk image that you can use with the emulator, to simulate the presence
of an external storage card (such as an SD card).
- Hierarchy Viewer (hierarchyviewer)
- Provides a visual representation of the layout's View hierarchy with performance information
for each node in the layout, and a magnified view of the display to closely examine the
pixels in your layout.
- SDK Manager
- Lets you manage SDK packages, such as installed platforms and system images.
- Lets you access the SQLite data files created and used by Android applications.
- Android Monitor
- Android Monitor is integrated into Android Studio and provides logcat, memory, CPU, GPU, and
network monitors for app debugging and analysis.
- Android Debug Bridge (adb) is a versatile command line tool that lets you communicate with
an emulator instance or connected Android-powered device. It also provides access to the
- ADB Shell Commands
- Learn the commands available for advanced command-line operations.
- Dalvik Debug Monitor Server (ddms)
- Lets you debug Android apps.
- Device Monitor
- Android Device Monitor is a stand-alone tool that provides a graphical user interface for
several Android application debugging and analysis tools.
- Lets you analyze the execution of your application in the context of system processes,
to help diagnose display and performance issues.
- Provides a graphical viewer for execution logs saved by your application.
- Tracer for OpenGL ES
- Allows you to capture OpenGL ES
commands and frame-by-frame images to help you understand how your app is executing
- Allows you to build encrypted and unencrypted
APK expansion files in Opaque
Binary Blob (OBB) format.
- Shrinks, optimizes, and obfuscates your code by removing unused code and renaming
classes, fields, and methods with semantically obscure names.
.apk files by ensuring that all uncompressed data starts with a
particular alignment relative to the start of the file. This should always be used to align .apk
files after they have been signed.
- Draw 9-patch
- Allows you to easily create a
NinePatch graphic using a
WYSIWYG editor. It also previews stretched versions of the image, and highlights the area in which
content is allowed.
- A command line utility that lets you encode PNG images to the ETC1 compression standard and
decode ETC1 compressed images back to PNG.
The platform tools are typically updated every time you install a new SDK platform. Each update
of the platform tools is backward compatible with older platforms. Usually, you directly use only
one of the platform tools—the Android Debug Bridge (
Android Debug Bridge is a versatile tool that lets you manage the state of an emulator instance or
Android-powered device. You can also use it to install an Android application (.apk) file on a
The other platform tools, such as aidl,
dx, are typically called by the Android
build tools, so you rarely need to invoke these tools directly.
As a general rule, you should rely on the build tools to call them as needed.
Note: The Android SDK provides additional shell tools that can
be accessed through
adb, such as bmgr and
- A shell tool you can use to interact with the Backup Manager on Android devices supporting
API Level 8 or greater.
- Provides a mechanism for collecting and viewing system debug output.