首页 文章

什么是Android SDK构建工具,平台工具和工具?应该使用哪个版本?

提问于
浏览
307

我知道这是一个非常基本的问题,但令我惊讶的是,我找不到任何关于Android SDK Build-tools的文档 . 除了Android SDK工具和Android SDK平台工具外,还有一堆Android SDK Build-tools,如附图所示 . 任何人都可以指向解释所有这些内容的来源,并帮助澄清如何选择某个版本的Android SDK Build-tools使用?

enter image description here

Edited (2014-02-27)

我仍然不完全了解所有工具 . 以下是基于Google最新文档的有限理解:

  • Android SDK Build-tools 曾经是 Android SDK Platform-tools 的组成部分 . 它们已与Android SDK平台工具分离,因此可以独立于集成开发环境(IDE)组件更新构建工具 .

  • Android SDK Platform-tools 是为了支持最新Android平台的功能而定制的 . 它们是向后兼容的,因此您始终可以使用 Android SDK Platform-tools 的最新更新,即使您的应用程序面向较旧的Android平台 .

  • SDK tools 是独立于平台的,无论您正在开发哪个Android平台,都需要它 .

我仍然不明白从 Android SDK Platform-tools 中取出 Android SDK Build-tools 的理由,它有一个实例并且易于管理更新 . 我能想到的唯一可能的原因是某些应用程序必须依赖较旧的构建组件来构建它们 . 谷歌的文件提到了这一点,但没有解释原因 . 查看发行说明,您会注意到 Android SDK Build-tools 的更新主要用于修复错误或/添加对新平台的支持 . 我可以想到一些应用程序使用旧版本 Android SDK Build-tools 的唯一原因是它们依赖于 Android SDK Build-tools 的某些错误 . 如果没有使用这些错误构建这些应用程序将无法正常运行 . 我希望Google能够通过提供一两个示例来更好地解释这一点,这些示例说明了为什么这些工具中的错误对某些应用程序至关重要

6 回答

  • 38

    Android SDK构建工具用于调试,构建,运行和测试Android应用程序 .

    Android Build Tools可用于从命令行或IDE(即Eclipse或Android Studio)开发和工作 .

    还用于连接Android设备并根源 . (fastboot,adb等...)

    始终使用最新的 . (推荐)

    More Info on Android Build tools and commands

  • 10

    正确的答案是

    将Android SDK的特定于构建的组件与平台工具组件分离,以便可以独立于集成开发环境(IDE)组件更新构建工具 .

    link (expand Revision 17)

  • 2

    我将讨论Build Tools,Platform Tools和Tools之间的区别 . 从实际角度来看,您只需知道第二个问题的答案:

    应该使用哪个版本?

    答:使用最新版本 .

    对于使用带有Gradle的Android Studio的用户,必须在 build.gradle (Module:app)文件中设置 buildToolsVersion .

    android {
        compileSdkVersion 25
        buildToolsVersion "25.0.2"
    
        ...
    }
    

    从哪里可以获得Build Tools的最新版本号?

    打开Android SDK Manager .

    • 在Android Studio中,转到工具> Android> SDK管理器>外观和行为>系统设置> Android SDK

    • 选择SDK工具选项卡 .

    • 从列表中选择Android SDK Build Tools

    • 检查显示包详细信息 .

    最后一项将显示最新版本 .

    确保已安装,然后在 build.gradle (模块:应用程序)中将该编号写为 buildToolsVersion .

  • 14

    You can find details about these in this Android - Command Line Tools


    tl;dr:

    SDK Tools:

    • Android SDK Manager(sdkmanager)

    • AVD经理(avdmanager)

    • Dalvik Debug Monitor Server(ddms)

    Build Tools:

    • 签名者

    • proGuard

    • zipalign

    • jobb

    Platform Tools:

    • adb

    • aidl,aapt,dexdump和dx

    • bmgr

    • logcat

  • 84

    Android SDK Build Tools正如它们所说的那样;用于构建Android应用程序的工具 . 使用最新的构建工具版本(由IDE通过Android SDK自动选择)非常重要,但旧版本留在那里的原因是为了支持向后兼容性,即如果您的项目依赖于旧版本的Build Tools .

  • 9

    关于Android SDK Build-tools的版本,答案是

    默认情况下,Android SDK使用最新下载的Build Tools版本 .

    Source

    在Eclipse中,您可以使用 project.properties 文件中的 sdk.buildtools 属性来选择特定版本 .

    似乎没有官方页面解释所有构建工具 . 以下是Android团队对此的看法 .

    [build]工具,例如aidl,aapt,dexdump和dx,通常由Android构建工具或Android开发工具(ADT)调用,因此您很少需要直接调用这些工具 . 作为一般规则,您应该依赖构建工具或ADT插件来根据需要调用它们 .

    Source

    无论如何,这里是工具之间差异的综合,平台工具和构建工具:

    • Android SDK Tools

    • 位置: $ANDROID_HOME/tools

    • 主要工具:ant脚本(用于构建APK)和 ddms (用于调试)

    • Android SDK Platform-tools

    • 位置: $ANDROID_HOME/platform-tools

    • 主要工具: adb (管理模拟器或Android设备的状态)

    • Android SDK Build-tools

    • 位置: $ANDROID_HOME/build-tools/$VERSION/

    • Documentation

    • 主要工具: aapt (生成R.java和未对齐的未签名APK), dx (将Java字节码转换为Dalvik字节码)和 zipalign (以优化您的APK)

相关问题