The Android SDK is composed of multiple packages that are required for app development. This page lists the most important command line tools that are available, organized by the packages in which they're delivered.
You can install and update each package using
Android Studio's SDK Manager
command line tool.
All of the packages are downloaded into your Android SDK directory, which
you can locate as follows:
- In Android Studio, click File > Project Structure.
- Select SDK Location in the left pane. The path is shown under Android SDK location.
Android SDK Command-Line Tools
Note: The Android SDK Command-Line Tools package (located in
cmdline-tools) replaces the SDK Tools package (located in
the new package, you can install a select version of the command line tools, and multiple
versions at a time; with the old package, you can only install the latest version of the tools,
and only one version at a time. Thus, the new package allows you to depend on
specific versions of the command line tools without having your code break when new versions
are released. For information about the deprecated SDK Tools package, see the
SDK Tools release notes.
If you just need these tools because you're not using Android Studio, you can download the command-line tools package here.
- Provides insight into the composition of your APK after the build process completes.
- Allows you to create and manage Android Virtual Devices (AVDs) from the command line.
- A code scanning tool that can help you to identify and correct problems with the structural quality of your code.
- For applications compiled by R8,
retracedecodes an obfuscated stack trace that maps back to your original source code.
- Allows you to view, install, update, and uninstall packages for the Android SDK.
Android SDK Build Tools
See also: SDK Build Tools release notes
This package is required to build Android apps. Most of the tools in here are invoked by the build tools and not intended for you. However, the following command line tools might be useful:
- Parses, indexes, and compiles Android resources into a binary format that is optimized for the Android platform, and packages the compiled resources into a single output.
- Signs APKs and checks whether APK signatures will be verified successfully on all platform versions that a given APK supports.
- Optimizes APK files by ensuring that all uncompressed data starts with a particular alignment relative to the start of the file.
Note: You can have multiple versions of the build tools to build your app for different Android versions.
Android SDK Platform Tools
See also: SDK Platform Tools release notes
These tools are updated for every new version of the Android platform to support new features (and sometimes more often to fix or improve the tools), and each update is backward compatible with older platform versions.
In addition to downloading from the SDK Manager, you can download the SDK Platform Tools here.
- Android Debug Bridge (adb) 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 APK on a device.
- A command line utility that lets you encode PNG images to the ETC1 compression standard and decode ETC1 compressed images back to PNG.
- Flashes a device with platform and other system images. For flashing instructions, see Factory Images for Nexus and Pixel Devices.
- This is a tool invoked via adb to view app and system logs.
See also: Android Emulator release notes
This package is required to use the Android Emulator. It includes the following:.
- 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).
Note: Prior to revision 25.3.0, the emulator tools were included with the SDK Tools package.
Jetifier reads a library that uses Support Library classes, and outputs an equivalent library that uses the newer AndroidX classes.