添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

计算默认的buildToolsVersion

3 人关注

根据 Android SDK 发行说明 你不再需要在项目的build.gradle中定义buildToolsVersion属性,因为已经使用了默认版本。

如果你使用的是Gradle 3.0.0或更高版本的Android插件,你的 项目会自动使用该插件指定的默认版本的构建工具。 插件所指定的默认版本。

然而,我正试图配置我们的持续集成服务器来签署已编译的应用程序,但我不知道应该使用哪个版本的构建工具。

如果build.gradle定义了一个buildToolsVersion,那么这个可以被提取出来,但是如果没有定义,我如何务实地找到 "默认 "版本?

所有文件都说要使用 "默认" or "recommended" version, but never defines how to find this

android
gradle
android-gradle-plugin
MrK
MrK
发布于 2018-08-03
2 个回答
Martin Zeitler
Martin Zeitler
发布于 2022-12-09
已采纳
0 人赞同

我们没有计算也没有定义 buildToolsVersion 的默认值/推荐值,因此它默认为最新的构建工具,总是与目标API级别相匹配,该级别被定义为由 目标SdkV版本 . the 发布说明 的SDK构建工具读取。

SDK Build Tools发布说明 Android SDK Build-Tools是构建Android应用程序所需的Android SDK的一个组件。它被安装在/build-tools/目录中。

你应该通过使用Android SDK Manager下载最新版本来保持你的构建工具组件的更新。如果你使用Gradle 3.0.0或更高版本的Android插件,你的项目会自动使用该插件指定的默认版本的构建工具。

而最有趣的是。

要使用不同版本的构建工具,请在模块的build.gradle中使用buildToolsVersion来指定,如下所示 ...

这意味着,我们可以简单地从一个模块的 buildToolsVersion 属性中删除。以前,在更新目标API时,我们总是要改变两个值--甚至在更新构建工具时更频繁。也有新的 requirements 为Play Store。

MrK
这似乎是正确的,尽管我认为Android文档可以更清楚一些。
MrK
这可以通过卸载所有的SDK Build-Tools并运行assembleRelease来测试。这将安装最新的SDK Buil-Tool版本,该版本与你描述的targetSdkV版本一致
Meanwhile (as of AGP 7.1) it's just minSdk , compileSdk , targetSdk ...
这是不正确的。我添加了另一个答案。
WonderCsabo
WonderCsabo
发布于 2022-12-09
0 人赞同

如果你不指定 buildToolsVersion ,Android Gradle插件将使用其默认的构建工具。对于每个AGP 释放 ,默认的构建工具版本是有记录的。

在写这篇文章的时候,最新的AGP版本是7.3.0,它将默认使用构建工具30.0.3。(最新的构建工具是33.0.1)。

这一点也在下列文件中得到了澄清 build tools 释放 notes page :