Android SDK Build-Tools is a component of the Android SDK required for
building Android apps. It's installed in the
<sdk>/build-tools/
directory.
You should always keep your Build Tools component updated by downloading the latest version
using the Android SDK Manager. If you're using
Android plugin for Gradle 3.0.0 or higher,
your project automatically uses a default version of the build tools that the plugin specifies. To
use a different version of the build tools, specify it using
buildToolsVersion
in your module's build.gradle
, as follows:
Groovy
android { buildToolsVersion "34.0.0" ... }
Kotlin
android { buildToolsVersion = "34.0.0" ... }
Revisions
The sections below provide notes about releases of the Build Tools. To determine which revisions of the Build Tools are available in your SDK, refer to the Installed Packages listing in the Android SDK Manager.
Build Tools, Revision 34.0.0 RC3(April 2023)
General bug fixes and improvements.
Build Tools, Revision 34.0.0 (February 2023)
This update includes support for building with Android 14 preview APIs.
Build Tools, Revision 33.0.2 (February 2023)
This update fixes the following issue:
-
core-lambda-stubs.jar
version 33.0.0 differs on macOS versus Linux/Windows. (See issue #237299698.)
Build Tools, Revision 33.0.1 (November 2022)
This update fixes the following issue:
- AIDL fails with build-tools 33.0.0. (See issue #236167971)
Build Tools, Revision 30.0.0 rc4 (May 2020)
This update includes support for building with Android 11 Preview APIs.
Build Tools, Revision 29.0.3 (January 2020)
This update fixes the following issue:
- Build issue with Renderscript on macOS Catalina. (See issue #142590626)
Build Tools, Revision 29.0.2 (August 2019)
This update fixes the following issue:
Build Tools, Revision 29.0.0 (June 2019)
This update includes support for building with API level 29.
Build Tools, Revision 28.0.3 (September 2018)
This update includes support for Android Gradle plugin 3.2.0 and fixes the following issues:
-
Fixed a JNI library bug that caused apps to crash when calling
androidx.renderscript.RenderScript.create()
. -
Fixed a bug that caused
Program type already present
build errors withandroidx.annotation
resources.
Build Tools, Revision 28.0.2 (August 2018)
Includes the latest version of D8.
Build Tools, Revision 27.0.3 (December 2017)
Improves support for compiling lambdas when you enable Java 8 language features.
Build Tools, Revision 27.0.2 (December 2017)
Improves support for Java 8 language features.
Build Tools, Revision 27.0.1 (November 2017)
Adds support for legacy multidex for test APKs. (Issue #37324038)
Build Tools, Revision 26.0.2 (October 2017)
In addition to general bug fixes, this release includes the following updates:
- Updates
apksigner
to version 0.8:- Compatibility with Java 9. (Issue #37137869)
-
New
--pass-encoding
parameter to handle keystores and keys that are encrypted using non-ASCII passwords. If you switch to Java 9 andapksigner
fails to decrypt your keystore or key, use this parameter to specify the character encoding you used to create the keystore or key. For more information, see theapksigner
documentation or runapksigner sign --help
from the commandline. -
Better error message when
apksigner
can't verify a JAR signature due to an unsupported digest or signature algorithm. (Issue #63525618)
-
Support for AAPT2 daemon mode when using
Android plugin for Gradle
3.0.0-beta7
or higher.
Build Tools, Revision 26.0.1 (July 2017)
In addition to general bug fixes, this release restores apksigner
to the build tools package (it was omitted by mistake in version 26.0.0) and includes the
following updates to the tool:
- Adds PKCS #11 support to allow signing with keys held in secure hardware. (Issue #37140484)
- Adds support for loading additional JCA Providers before signing.
- Honors
android:targetSandboxVersion
when verifying APKs. - When signing, rejects APKs with files that include 'CR' (carriage return), 'LF' (line feed), or 'NUL' (null) special characters in the file name.
- Fixes
apksigner.bat
to correctly handle parameters containing spaces. (Issue #38132450) - Fixes a bug in JAR signature verification when multiple digests are present for the same
entry in
MANIFEST.MF
. (Issue #38497270)
Build Tools, Revision 26.0.0 (June 2017)
Adds support for building with API level 26 and contains general bug fixes.
Build Tools, Revision 25.0.3 (April 2017)
Updates to apksigner
:
- Added
--in
parameter for symmetry with existing--out
parameter. - If you do not specify the key password using
--key-pass
,apksigner
uses the keystore password as key password. However, if the key requires a different password, you are now prompted to enter the key password from the command line. (Issue #37134986) - Added compatibility with
jarsigner
for non-ASCII passwords. (Issue #37135737)
Build Tools, Revision 25.0.2 (December 2016)
Bug fixes.
Build Tools, Revision 25.0.1 (November 2016)
This release includes bug fixes and the following
improvements to apksigner
:
- Support for APKs with obfuscated JAR entry names.
--print-certs
switch now also dumps MD5 fingerprints.
Build Tools, Revision 25.0.0 (October 2016)
Bug fixes for the Jack toolchain:
- Fixed issue with Jack supporting non-ASCII source files. (Issue #218892)
- Fixed issue that causes an
AssertionError
during some compilations. (Issue #208414)
Build Tools, Revision 24.0.3 (September 2016)
- Added
apksigner
, an APK signing tool to replacejarsigner
. By default,apksigner
signs APKs using the conventional JAR signing scheme (used byjarsigner
) and the APK Signature Scheme v2 introduced in Android 7.0 (API level 24). Any modification to an APK signed with APK Signature Scheme v2 invalidates its signature. Thus, APK post-processing, such aszipalign
, must be performed beforeapksigner
is invoked, not after. Invokingzipalign
beforeapksigner
works fine becauseapksigner
preserves APK alignment and compression (unlikejarsigner
).
Build Tools, Revision 23.0.3 (March 2016)
- Fix issues in the RenderScript Support Library on arm64 devices.
- Fix issues in the RenderScript Support Library on certain Jelly Bean devices.
- Support
renderscriptTargetAPI 21+
when using Android Plugin for Gradle, Revision 2.1.0 and above .
Build Tools, Revision 23.0.2 (November 2015)
- Improved the merging performance of the
dx
tool. - Fixed issues in the RenderScript compiler for Windows.
Build Tools, Revision 23.0.1 (October 2015)
Fixed issues in the RenderScript tools.
Build Tools, Revision 23.0.0 (August 2015)
Added support for the Android 6.0 (API level 23) release.
Build Tools, Revision 22.0.1 (March 2015)
Fixed compatibility issues with RenderScript kernels on Android 4.4 (API level 19) to Android 4.1 (API level 16) devices.
Build Tools, Revision 22.0.0 (March 2015)
Added support for Android 5.1 (API level 22).
Build Tools, Revision 21.1.2 (February 2015)
Fixed problem with building data layouts in 32-bit mode.
Build Tools, Revision 21.1.1 (November 2014)
Fixed multidex script issues.
Build Tools, Revision 21.1 (October 2014)
Added multidex file support for APKs and Jack support to address the 64K method reference limit.
Build Tools, Revision 21.0.2 (October 2014)
Complete updates for Eclipse ADT to solve instability issues on Windows platforms.
Build Tools, Revision 21.0.1 (October 2014)
Initial updates for Eclipse ADT on Windows. Please use Revision 21.0.2.
Build Tools, Revision 21.0.0 (October 2014)
- General Notes:
-
- Added support for Android 5.0 (API level 21).
- RenderScript now supports seamless 32/64-bit operation for API level 21 and higher.
- Fixed issue with the Gradle build system when using the JaCoCo plugin. (Issue 69174)
- Added an input-list option for use with long command lines on Windows.
Build Tools, Revision 20.0.0 (June 2014)
- General Notes:
-
- Added support for Android Wear.
Build Tools, Revision 19.1.0 (May 2014)
- General Notes:
-
- Added
zipalign
to the Build Tools. - Modified
aapt
to ignore XML files that fail to compile.
- Added
Build Tools, Revision 19.0.3 (March 2014)
Fixed an issue with RenderScript support.
Build Tools, Revision 19.0.2 (February 2014)
- Fixed RenderScript build issues:
-
- Fixed a problem with RenderScript bitcode encoding. (Issue 64775)
- Fixed a problem with RenderScript missing math symbols (Issue 64110)
Build Tools, Revision 19.0.1 (December 2013)
- Fixed miscellaneous build issues:
-
- Fixed support for compiling RenderScript in NDK mode with Gradle.
- Fixed
BufferOverflowException
problem in the dx build. (Issue 61710)
Build Tools, Revision 19 (October 2013)
Added support for Android 4.4 (API level 19) build targets.
Build Tools, Revision 18.1.1 (September 2013)
Fixed several minor build issues.
Build Tools, Revision 18.1.0 (September 2013)
Fixed issue with RenderScript support mode.
Build Tools, Revision 18.0.1 (July 2013)
Added support for Android 4.3 (API level 18) build targets.
Build Tools, Revision 17 (May 2013)
Initial release.
- General Notes:
-
- Included support for Android 4.2 (API level 17) build targets.
- Decoupled the build-specific components of the Android SDK from the platform-tools component, so that the build tools can be updated independently of the integrated development environment (IDE) components.