什么是Android SDK构build工具,平台工具和工具? 哪个版本应该使用?
我知道这是一个非常基本的问题,但令我惊讶的是,我找不到任何有关Android SDK构build工具的文档。 除了Android SDK工具和Android SDK平台工具之外,还有一些Android SDK构build工具,如附图所示。 任何人都可以指出一个来源解释所有这些,并帮助澄清如何select使用特定版本的Android SDK构build工具?
编辑(2014-02-27) :
我仍然不完全理解所有的工具。 以下是基于Google最新文档的有限理解:
- Android SDK构build工具曾经是Android SDK平台工具的组件。 它们已经脱离了Android SDK平台工具,因此构build工具可以独立于集成开发环境(IDE)组件进行更新。
- Android SDK平台 – 工具是为了支持最新Android平台的function而定制的。 它们是向后兼容的,所以你总是使用最新的Android SDK平台工具更新,甚至你的应用程序的目标是旧的Android平台。
- SDK工具是独立于平台的,无论您正在开发哪种Android平台,都是必需的。
我仍然不明白将Android SDK构build工具从Android SDK平台 工具中提取出来的原因,这些工具只有一个实例,并且易于pipe理更新。 我能想到的唯一可能的原因是一些应用程序必须依靠较旧的构build组件来构build它们。 Google的文档提到了这一点,但并没有解释为什么。 查看发行说明,您会注意到Android SDK Build-tools的更新主要是为了修复错误和/或添加对新平台的支持。 我能想到的一些应用程序使用旧版本的Android SDK构build工具的唯一原因是他们依赖于Android SDK构build工具的某些缺陷。 这些应用程序不会正常工作,而不用这些错误构build。 我希望Google能够通过给出一两个例子来解释这个问题,说明为什么这些工具中的错误对于某些应用程序来说是至关重要的。
关于Android SDK构build工具的版本,答案是
默认情况下,Android SDK使用最新的下载版本的构build工具。
资源
在Eclipse中,您可以使用project.properties
文件中的sdk.buildtools
属性来select特定的版本。
似乎没有官方网页解释所有的构build工具。 以下是Android团队对此所说的话。
[build]工具(如aidl,aapt,dexdump和dx)通常由Android构build工具或Android开发工具(ADT)调用,因此您很less需要直接调用这些工具。 作为一般规则,您应该依靠构build工具或ADT插件根据需要调用它们。
资源
无论如何,下面是工具,平台工具和构build工具之间差异的综合:
- Android SDK工具
- 位置:
$ANDROID_HOME/tools
- 主要工具:ant脚本(用于构buildAPK)和
ddms
(用于debugging)
- 位置:
- Android SDK平台 – 工具
- 位置:
$ANDROID_HOME/platform-tools
- 主要工具:
adb
(pipe理模拟器或Android设备的状态)
- 位置:
- Android SDK构build工具
- 位置:
$ANDROID_HOME/build-tools/$VERSION/
- 文档
- 主要工具:
aapt
(生成R.java和未alignment的,未签名的APK),dx
(将Java字节码转换为Dalvik字节码)和zipalign
(用于优化APK)
- 位置:
Android SDK构build工具用于debugging,构build,运行和testingAndroid应用程序。
Android构build工具可用于从命令行或IDE(即Eclipse或Android Studio)开发和工作。
也用于连接Android设备并对其进行根目录(fastboot,adb和更多..)
总是使用最新的(推荐)
Android上的更多信息构build工具和命令
我将讨论构build工具,平台工具和工具之间的区别。 从实际的angular度来看,你只需要知道你的第二个问题的答案:
应该使用哪个版本?
答:使用最新的版本。
对于那些使用Android Studio和Gradle的人, buildToolsVersion
必须在build.gradle
(Module:app)文件中设置。
android { compileSdkVersion 25 buildToolsVersion "25.0.2" ... }
我在哪里可以获得构build工具的最新版本号?
打开Android SDKpipe理器。
- 在Android Studio中,转至工具 > Android > SDKpipe理器 > 外观和行为 > 系统设置 > Android SDK
- selectSDK工具选项卡。
- 从列表中selectAndroid SDK构build工具
- 选中Show Package Details 。
最后一个项目将显示最新版本。
确保它已经安装,然后在build.gradle
(Module:app)中build.gradle
编号写为buildToolsVersion
。
正确的答案是
将Android SDK的构build特定组件与platform-tools组件解耦,以便可以独立于集成开发环境(IDE)组件更新构build工具。
链接(展开版本17)
你可以在这个 Android命令行工具中 find关于这些的细节
TL;博士:
SDK工具:
- Android SDKpipe理器(sdkmanager)
- AVD经理(avdmanager)
- Dalvik Debug Monitor服务器(ddms)
构build工具:
- 签名者
- ProGuard的
- 的zipalign
- JOBB
平台工具:
- 亚行
- aidl,aapt,dexdump和dx
- BMGR
- logcat的
Android SDK构build工具正是这个名字所说的。 构buildAndroid应用程序的工具。使用最新的构build工具版本(由IDE通过Android SDK自动select)非常重要,但旧版本的原因是支持向后兼容性,即如果您的项目依赖于旧版本的构build工具。