本文译自Android官方技术文档《Build
Overview》,原文地址:http://tools.android.com/build。

因为《Android Lint Checks》这篇太长了,没译完,所以这次就发一下《Build Overview》的翻译好了。

这一篇是对Android 的开发工具进行构建的概述,比如Android Studio,Android Gradle 插件,SDK和ADT等。

翻译不易,转载请注明CSDN博客上的出处:

http://blog.csdn.net/maosidiaoxian/article/details/44451007

翻译工作耗时费神,如果你觉得本文翻译得还OK,文末有个“顶”字,你懂的,希望多多支持。如有错讹,敬请指正。谢谢。

注:因GFW的关系,无法下载代码的,可以参考本博客中关于下载Android源码的文章进行下载。

构建概述

获取源代码

几个分支

目前,我们有以下几个可能的分支:

 开发分支  发布分支  IntelliJ  备注
 studio-1.0-dev  studio-1.0-release  idea13-dev  这是个用于1.0的分支 已关闭
 studio-1.1-dev  studio-1.1-release  idea13-1.1-dev  这是个用于1.1的分支 已关闭
 studio-1.2-dev  studio-1.2-release  idea14-1.2-dev  这是个用于1.2的分支 现在只在修复BUG
 studio-1.3-dev  studio-1.3-release  idea14-1.3-dev  这是个用于 1.3的分支
 studio-master-dev  studio-master-dev  idea14-dev  这个分支用于提交到1.3

当前的开发分支是studio-1.2-dev。

我们会进行自动合并,顺序如下: studio-1.0-dev -> studio-1.1-dev -> studio-1.2-dev -> studio-1.3-dev -> studio-master-dev
ub-tools-idea133和ub-tools-master分支已经停用了。我们也没有使用master分支。

检出代码
首先,你需要为你的平台安装一些先决条件。这意味着你需要 git,C 编译器,等等。这里有相当多的步骤,并且这一切都依赖于平台,因此请转到正式的构建介绍,那里我们有详细的说明: http://source.android.com/source/initializing.html

有些要求是不需要的(比如区分大小写的文件系统),除非您也计划构建这个平台。您还需要 XCode 用于构建模拟器。

一旦你配置好一切后,按照这下面的说明下载“repo”工具: http://source.android.com/source/downloading.html

然后你就可以通过在shell中使用下面的命令来检出源代码了:
$ mkdir studio-1.3-dev

$ cd studio-1.3-dev 

$ repo init -u https://android.googlesource.com/platform/manifest -b studio-1.3-dev

$ repo sync

(显然,你可以创建一个你想要的顶级目录;我们中那些检出多个分支的人,更愿意在分支后重命名这个目录。

在执行 repo init 命令期间,它会问你关于的姓名和电子邮件地址 ;如果您决定记录你的changesets,并上传以供审核,那它们将在以后用到。

检出一个特定的发布分支

我们正在开始标记发布版本。这意味着您可以使用标记(tag)来获得某个特定版本的源代码。我们当前正在使用下列标记:

 Gradle  gradle_x.y.z 
 Studio  studio_x.y.z 

你可以在这里看到所有可用的标记: https://android.googlesource.com/platform/manifest/+refs


例如,您可以使用下面的命令来检出 1.0.0 版本的Gradle 插件:

repo init -u https://android.googlesource.com/platform/manifest -b gradle_1.0.0

$ repo sync


进行构建

可以通过 studio-* branches 构建的 SDK 的部分,只是 IDE 的组件和 SDK Tools。由于不由的构建系统,每个组件的构建是不同的。

它们都不使用基于make 的平台构建系统

构建
Android Studio

从历史上看,构建 Android tools 也需要构建整个的 Android SDK,因为比如模拟器,就需要系统镜像(system image)。

然而,我们已经逐渐地把 tools 的源代码迁移到更加独立的安装程序中,您现在可以在没有完全检出Android 和 C 编译器的情况下,构建 Android Studio IDE。构建 Android 工作室的说明列于 构建 Android Studio页 ;本文档的其余部分记录了构建其他tools(Eclipse
插件、 模拟器等) 的过程

构建 Android Gradle 插件

相关说明请参见生成 Android Gradle 插件

构建 Linux 和 MacOS 的 SDK

这一部分仅生成 SDK Tools。请按照下列步骤操作:
$ mkdir -p out/dist

$ ./tools/buildSrc/servers/build_tools.sh `pwd`/out `pwd`/out/dist 1234

这将会为你当前的平台构建 SDK Tools。构建结果位于于 out/sdk/

由以下内容组成
  • 模拟器及相关联的可执行文件和类库
  • 基于 Java 的独立tools
  • 监视器

只用基于Java的tools,你可以在tools/base 中打开IJ 项目。

如果要只构建或测试 java tools:

$ cd tools/

$ ./gradlew assemble // builds only

$ ./gradlew check // runs tests as well.


构建 Windows SDK
这些操作指南目前已经过时了。新的指南即将推出。


完整的 Windows SDK 构建只在Linux上才支持——大部分的框架都不是设计于在 Windows 上构建,所以从技术上说,Windows SDK 是在被替换了一些二进制文件的 Linux SDK 上面构建的。.



安装:

$ sudo apt-get install mingw32 tofrodos

mingw32 是交叉编译器,tofrodos 则添加了一个 unix2dos 命令 



用于构建:

$ . build/envsetup.sh

$ lunch sdk-eng

$ make win_sdk

注意,这将会先构建出 Linux SDK,然后构建出 Windows SDK。构建结果位于 

out/host/windows/sdk/android-sdk_eng.username_windows /

构建基于 Eclipse 的Tools。

要设置用于构建的 Eclipse 环境,为Android 编辑和调试 Eclipse插件,请参阅“构建基于
Eclipse 的Tools
”文档。

另外的工具

下一步是基于你想要工作的项目准备安装:
  • Traceview, Hierarchy Viewer 和 DDMS 是所有要安装的,如下:

    • 核心逻辑分别位于 sdk/traceview、 sdk/hierarchyviewer2 和 sdk/ddms 下的 Java 项目。将这些项目导入 Eclipse。
    • 上述项目会生成jar文件,然后由它们相应的插件引用。traceview 插件、 hierarchyviewer 插件和 ddms 插件,都位于 sdk/eclipse/plugins 下。
  • 待办:添加模拟器的说明

Android官方技术文档翻译——开发工具的构建概述的更多相关文章

  1. Android官方技术文档翻译——Gradle 插件用户指南(7)

    本文译自Android官方技术文档<Gradle Plugin User Guide>,原文地址:http://tools.android.com/tech-docs/new-build- ...

  2. Android官方技术文档翻译——Gradle 插件用户指南(5)

    昨晚把第五章未译完的几句话攻克了.只是第六章没怎么译,明后天又是周末,假设周一前第六章翻译完的话,周一再发第六章. 本文译自Android官方技术文档<Gradle Plugin User Gu ...

  3. Android官方技术文档翻译——Gradle 插件用户指南(4)

    最近赶项目,白天基本没时间,只有晚上在家的时候才能看一看.昨天晚上只翻译完了第四章,今天就只发第四章吧. 本文译自Android官方技术文档<Gradle Plugin User Guide&g ...

  4. Android官方技术文档翻译——Gradle 插件用户指南(6)

    没想到翻译这篇<Gradle 插件用户指南>拖了差不多一个月,还跨年了.不过还好,在2号时终于一口气把剩下的给翻译完了(其实那天剩下的也就不到一章). 今天先发一下第六章,明天再发第七章. ...

  5. Android官方技术文档翻译——新构建系统概述

    本文译自Android官方技术文档<New Build System>,原文地址:http://tools.android.com/tech-docs/new-build-system. ...

  6. Android官方技术文档翻译——Gradle 插件用户指南(1-3)

    不知道是什么网络问题,上午一直发不了博客,其它页面基本正常,就是在写博客这里,每次打开都是响应超时.刚才用了VPN,顺便试了一下,竟然能够编辑.想是CDN之类的问题吧. 这次翻译的是Gradle 插件 ...

  7. Android官方技术文档翻译——清单合并

    本文译自Android官方技术文档<Manifest Merger>,原文地址:http://tools.android.com/tech-docs/new-build-system/us ...

  8. Android官方技术文档翻译——Ant 任务

    本文译自Android官方技术文档<Ant Tasks>,原文地址:http://tools.android.com/tech-docs/ant-tasks. 由于是抽着时间译的.所以这篇 ...

  9. Android官方技术文档翻译——IntelliJ 项目迁移

    本文译自Android官方技术文档<Migrating from IntelliJ Projects>,原文地址:http://tools.android.com/tech-docs/ne ...

随机推荐

  1. Swift基础之音乐播放随机变换着色板

    今天的内容比较简单,我也就不做详细的文字介绍了,直接上代码,希望对大家有所帮助 var audioPlayer = AVAudioPlayer()    //梯度配色    let gradientL ...

  2. 从Cell类型转变成数据型

    我们有一个如下的cell数据 cdata = {'1' '11' '111' '1111' '11111'}; 现在要把他转变成double型的数组,很自然会想到的方法是cell2mat,可悲的是会遇 ...

  3. EJB开发第一个无状态会话bean、开发EJB客户端

    开发第一个无状态会话bean EJB中的三中bean: 会话Bean(Session Bean) 负责与客户端交互,是编写业务逻辑的地方,在会话bean中可以通过JDBC直接操作数据库,但大多数情况下 ...

  4. ROS_Kinetic_x 目前已更新的常用機器人資料 rosbridge agvs pioneer_teleop nao TurtleBot

    Running Rosbridge Description: This tutorial shows you how to launch a rosbridge server and talk to ...

  5. 安卓Toast自定义及防止重复显示

    Toast是安卓系统中,用户误操作时或某功能执行完毕时,对用户的一种提示,它没有焦点,并在一定时间内会消失,但用户连续误操作(如登录时,密码错误)多次时,则会有多个Toast被创建,系统会把这些toa ...

  6. 关于LT分发系统的设计构想

    git地址 https://github.com/cxyxd/LtDistribution 背景 对tomcat做集群,在多机多tomcat的情况下,如果要更新代码,只能手动的将代码复制,粘贴,然后下 ...

  7. 13 SQLiteOpenHelper SQLiteDatabase详解

    创建数据库: 1. 创建一个类继承SQLiteOpenHelper 2. 创建继承对象 new SQLiteOpenHelper() 3. 用创建的对象获取可写或者可读的SQLiteDatabase ...

  8. 学习TensorFlow,concat连接两个(或多个)通道

    深度学习中,我们经常要使用的技术之一,连接连个通道作为下一个网络层的输入,那么在tensorflow怎么来实现呢? 我查看了tensorflow的API,找到了这个函数: tf.concat(conc ...

  9. tomcat中Servlet的工作机制

    在研究Servlet在tomcat中的工作机制前必须先看看Servlet规范的一些重要的相关规定,规范提供了一个Servlet接口,接口中包含的重要方法是init.service.destroy等方法 ...

  10. (NO.00004)iOS实现打砖块游戏(五):游戏场景类

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 创建游戏场景类头文件 在Xcode创建新GameScene类,继 ...