Android gradle:buildtoolsVersion vs compileSdkVersion

Android gradle:buildtoolsVersion vs compileSdkVersion,android,android-gradle-plugin,Android,Android Gradle Plugin,Android项目build.gradle中的buildtoolsVersion与compileSdkVersion有什么区别 编辑:具体地说,我想澄清一下构建工具是什么?compileSdkVersion是您编译的Android的API版本 buildToolsVersion是要使用的编译器版本(aapt、dx、renderscript编译器等)。对于每个API级别(从18开始),都有一个匹配的.0.0版本 在IO 2014上,我们发布了API 20,并构建了与之配套的工具20.0.0 在An

Android项目build.gradle中的
buildtoolsVersion
compileSdkVersion
有什么区别


编辑:具体地说,我想澄清一下构建工具是什么?

compileSdkVersion是您编译的Android的API版本

buildToolsVersion
是要使用的编译器版本(aapt、dx、renderscript编译器等)。对于每个API级别(从18开始),都有一个匹配的.0.0版本

在IO 2014上,我们发布了API 20,并构建了与之配套的工具20.0.0

在Android版本之间,我们将发布编译器的更新,因此我们将发布版本.0.1、.0.2等。。。因为我们不想在您的指导下默默地更新这些版本,所以在您方便的时候,由您决定是否移动到新版本

您可以使用比您的编译器版本更高版本的构建工具,以便在不更改您构建应用程序所依据内容的情况下选择新的/更好的编译器。

Android Studio 3.0更新 知道确切的
buildToolsVersion
不再像以前那样重要,因为现在它是自动选择的

报告说:

您不再需要为构建工具指定版本(因此 现在可以删除
android.buildToolsVersion
属性)。默认情况下, 插件会自动使用所需的最低生成工具版本 对于您正在使用的Android插件版本

查找准确的版本号 我最初来这里是想知道最新构建工具版本的确切版本号(回到需要手动更新的年代)。如果您仍然需要执行此操作,可以通过以下方式找到:

转到工具>SDK管理器>SDK工具(选项卡)。从列表中选择Android SDK构建工具,然后选中显示软件包详细信息。最后一项将显示最新版本


在上图中,我可以看到我已经安装了
buildtoolsversion27.0.3
。有一个较新的
rc
(候选发行版)版本,但我还没有安装它。稳定版本出来后我会的。

这就是你想要的:是否可以在较低的编译器DK版本上使用较高的BuildTools版本,比如说在18.0.0编译器DK版本上使用20.0.0 BuildTools版本?@Glide是的,构建工具将支持较旧的版本。@XavierDucrohet我必须指定buildToolsVersion吗?我记得我在某处读到,最新的构建工具版本是自动选择的。我试着删除buildToolsVersion,但Android Studio对此不满意。有链接的人会用compileSdkVersion、buildToolsVersion、minSdkVersion和targetSdkVersion制作一份文档,说明幕后的实际情况吗?我想正确地理解它。@POEDR366请看伊恩·莱克的这篇有价值的文章:-只是想澄清一下,在AS 3.2中,上面的路径是“文件=>Settings=>Appearance&Behavor…”很奇怪,我的发布版本在没有定义构建工具版本(AGP 4.1.1)时失败,抱怨构建工具版本太低