Android SDK Build-Tools 是构建 Android 应用所需的 Android SDK 的一个组件。它安装在 <sdk>/build-tools/
目录中。
您应始终通过使用 Android SDK 管理器 下载最新版本来保持 Build Tools 组件更新。如果您使用的是 Android Gradle 插件 3.0.0 或更高版本,您的项目会自动使用插件指定的构建工具的默认版本。要使用不同版本的构建工具,请使用模块的 build.gradle
中的 buildToolsVersion
指定它,如下所示:
Groovy
android { buildToolsVersion "34.0.0" ... }
Kotlin
android { buildToolsVersion = "34.0.0" ... }
版本
以下各节提供有关 Build Tools 版本的发行说明。要确定您的 SDK 中可用的 Build Tools 版本,请参阅 Android SDK 管理器中的“已安装的软件包”列表。
Build Tools,版本 34.0.0 RC3(2023 年 4 月)
常规错误修复和改进。
Build Tools,版本 34.0.0 (2023 年 2 月)
此更新包括对使用 Android 14 预览版 API 进行构建的支持。
Build Tools,版本 33.0.2 (2023 年 2 月)
此更新修复了以下问题:
-
core-lambda-stubs.jar
版本 33.0.0 在 macOS 与 Linux/Windows 上有所不同。(请参阅 问题 #237299698。)
Build Tools,版本 33.0.1 (2022 年 11 月)
此更新修复了以下问题:
- 使用构建工具 33.0.0 时,AIDL 失败。(请参阅 问题 #236167971)
Build Tools,版本 30.0.0 rc4 (2020 年 5 月)
此更新包括对使用 Android 11 预览版 API 进行构建的支持。
Build Tools,版本 29.0.3 (2020 年 1 月)
此更新修复了以下问题:
- 在 macOS Catalina 上使用 Renderscript 出现构建问题。(请参阅 问题 #142590626)
Build Tools,版本 29.0.2 (2019 年 8 月)
此更新修复了以下问题:
Build Tools,版本 29.0.0 (2019 年 6 月)
此更新包括对使用 API 级别 29 进行构建的支持。
Build Tools,版本 28.0.3 (2018 年 9 月)
此更新包括对 Android Gradle 插件 3.2.0 的支持,并修复了以下问题:
- 修复了导致应用在调用
androidx.renderscript.RenderScript.create()
时崩溃的 JNI 库错误。 - 修复了导致使用
androidx.annotation
资源出现Program type already present
构建错误的错误。
Build Tools,版本 28.0.2 (2018 年 8 月)
包含最新版本的 D8。
Build Tools,版本 27.0.3 (2017 年 12 月)
改进了在启用 Java 8 语言功能 时编译 lambda 表达式的支持。
Build Tools,版本 27.0.2 (2017 年 12 月)
改进了对 Java 8 语言功能 的支持。
Build Tools,版本 27.0.1 (2017 年 11 月)
添加了对测试 APK 的传统 multidex 的支持。(问题 #37324038)
Build Tools,版本 26.0.2 (2017 年 10 月)
除了常规错误修复外,此版本还包括以下更新:
- 将
apksigner
更新到版本 0.8- 与 Java 9 兼容。(问题 #37137869)
- 新的
--pass-encoding
参数用于处理使用非 ASCII 密码加密的密钥库和密钥。如果您切换到 Java 9 并且apksigner
无法解密您的密钥库或密钥,请使用此参数指定用于创建密钥库或密钥的字符编码。如需了解更多信息,请参阅apksigner
文档 或从命令行运行apksigner sign --help
。 - 由于不支持的摘要或签名算法,
apksigner
无法验证 JAR 签名时,会显示更好的错误消息。(问题 #63525618)
- 使用Gradle Android 插件
3.0.0-beta7
或更高版本时,支持 AAPT2 守护进程模式。
构建工具,版本 26.0.1 (2017 年 7 月)
除了常规的错误修复外,此版本还将 apksigner
恢复到构建工具包中(在 26.0.0 版本中因错误而被省略),并包含以下工具更新
- 添加 PKCS #11 支持,允许使用安全硬件中保存的密钥进行签名。(问题 #37140484)
- 添加在签名之前加载其他JCA 提供程序的支持。
- 在验证 APK 时,遵循
android:targetSandboxVersion
。 - 签名时,拒绝文件名中包含“CR”(回车符)、“LF”(换行符)或“NUL”(空字符)特殊字符的文件的 APK。
- 修复
apksigner.bat
以正确处理包含空格的参数。(问题 #38132450) - 修复了在
MANIFEST.MF
中同一条目存在多个摘要时 JAR 签名验证中的错误。(问题 #38497270)
构建工具,版本 26.0.0 (2017 年 6 月)
添加了使用 API 级别 26 进行构建的支持,并包含常规错误修复。
构建工具,版本 25.0.3 (2017 年 4 月)
对 apksigner
的更新
- 添加了
--in
参数,以与现有--out
参数对称。 - 如果未使用
--key-pass
指定密钥密码,apksigner
将使用密钥库密码作为密钥密码。但是,如果密钥需要不同的密码,现在将提示您从命令行输入密钥密码。(问题 #37134986) - 添加了与
jarsigner
对非 ASCII 密码的兼容性。(问题 #37135737)
构建工具,版本 25.0.2 (2016 年 12 月)
错误修复。
构建工具,版本 25.0.1 (2016 年 11 月)
此版本包含错误修复以及对 apksigner
的以下改进
- 支持具有混淆的 JAR 条目名称的 APK。
--print-certs
开关现在还转储 MD5 指纹。
构建工具,版本 25.0.0 (2016 年 10 月)
Jack 工具链的错误修复
- 修复了 Jack 支持非 ASCII 源文件的问题。(问题 #218892)
- 修复了在某些编译过程中导致
AssertionError
的问题。(问题 #208414)
构建工具,版本 24.0.3 (2016 年 9 月)
- 添加了
apksigner
,这是一种用于替换jarsigner
的 APK 签名工具。默认情况下,apksigner
使用传统的 JAR 签名方案(由jarsigner
使用)和 Android 7.0(API 级别 24)中引入的APK 签名方案 v2 对 APK 进行签名。对使用 APK 签名方案 v2 签名的 APK 进行任何修改都会使其签名失效。因此,必须在调用apksigner
之前执行 APK 后处理(例如zipalign
),而不是之后。在apksigner
之前调用zipalign
可以正常工作,因为apksigner
会保留 APK 对齐和压缩(与jarsigner
不同)。
构建工具,版本 23.0.3 (2016 年 3 月)
- 修复了 arm64 设备上 RenderScript 支持库中的问题。
- 修复了某些 Jelly Bean 设备上 RenderScript 支持库中的问题。
- 在使用 Gradle Android 插件版本 2.1.0 及更高版本时,支持
renderscriptTargetAPI 21+
。
构建工具,版本 23.0.2 (2015 年 11 月)
- 改进了
dx
工具的合并性能。 - 修复了 Windows 上 RenderScript 编译器中的问题。
构建工具,版本 23.0.1 (2015 年 10 月)
修复了 RenderScript 工具中的问题。
构建工具,版本 23.0.0 (2015 年 8 月)
添加了对 Android 6.0(API 级别 23)版本的支持。
构建工具,版本 22.0.1 (2015 年 3 月)
修复了 Android 4.4(API 级别 19)到 Android 4.1(API 级别 16)设备上 RenderScript 内核的兼容性问题。
构建工具,版本 22.0.0 (2015 年 3 月)
添加了对 Android 5.1(API 级别 22)的支持。
构建工具,版本 21.1.2 (2015 年 2 月)
修复了在 32 位模式下构建数据布局的问题。
构建工具,版本 21.1.1 (2014 年 11 月)
修复了多 dex 脚本问题。
构建工具,版本 21.1 (2014 年 10 月)
添加了对 APK 的多 dex 文件支持和 Jack 支持,以解决 64K 方法引用限制。
构建工具,版本 21.0.2 (2014 年 10 月)
对 Eclipse ADT 的完整更新,以解决 Windows 平台上的不稳定性问题。
构建工具,版本 21.0.1 (2014 年 10 月)
Windows 上 Eclipse ADT 的初始更新。请使用版本 21.0.2。
构建工具,版本 21.0.0 (2014 年 10 月)
- 一般说明
-
- 添加了对 Android 5.0(API 级别 21)的支持。
- RenderScript 现在支持 API 级别 21 及更高版本的无缝 32/64 位操作。
- 修复了使用 JaCoCo 插件时 Gradle 构建系统的问题。(问题 69174)
- 添加了用于在 Windows 上使用长命令行的 *输入列表* 选项。
构建工具,版本 20.0.0 (2014 年 6 月)
- 一般说明
-
- 添加了对 Android Wear 的支持。
构建工具,版本 19.1.0 (2014 年 5 月)
- 一般说明
-
- 将
zipalign
添加到构建工具中。 - 修改了
aapt
以忽略无法编译的 XML 文件。
- 将
构建工具,版本 19.0.3 (2014 年 3 月)
修复了 RenderScript 支持中的问题。
构建工具,版本 19.0.2 (2014 年 2 月)
构建工具,版本 19.0.1 (2013 年 12 月)
- 修复了各种构建问题
-
- 修复了在 NDK 模式下使用 Gradle 编译 RenderScript 的支持。
- 修复了 dx 构建中的
BufferOverflowException
问题。(问题 61710)
构建工具,版本 19 (2013 年 10 月)
添加了对 Android 4.4(API 级别 19)构建目标的支持。
构建工具,版本 18.1.1 (2013 年 9 月)
修复了几个次要的构建问题。
构建工具,版本 18.1.0 (2013 年 9 月)
修复了 RenderScript 支持模式的问题。
构建工具,版本 18.0.1 (2013 年 7 月)
添加了对 Android 4.3(API 级别 18)构建目标的支持。
构建工具,版本 17 (2013 年 5 月)
初始版本。
- 一般说明
-
- 包含对 Android 4.2(API 级别 17)构建目标的支持。
- 将 Android SDK 的构建特定组件与平台工具组件分离,以便可以独立于集成开发环境 (IDE) 组件更新构建工具。