本文译自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. Java 资源本地化与国际化

    资源包 在编写应用程序的时候,需要面对的一个问题是如何来处理与locale相关的一些信息.比如,页面上的一些静态文本就希望能够以用户习惯的语言显示.最原始的做法是将这些信息硬编码到程序中(可能是一大串 ...

  2. Android中GridView的一些特殊属性

    GridView的一些特殊属性: 1.android:numColumns="auto_fit"   //GridView的列数设置为自动 2.android:columnWidt ...

  3. ORACLE数据库管理常用查询语句

    /*查看表空间的名称及大小*/ SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size FROM dba_tabl ...

  4. Android监听屏幕解锁和判断屏幕状态

    开发后台服务的时候经常需要对屏幕状态进行判断,如果是想要监听屏幕解锁事件,可以在配置里面注册action为 android.intent.action.USER_PRESENT的广播,则可以监听解锁事 ...

  5. 【安卓开发】Facebook工程师是如何改进他们Android客户端的

    原文出处: Facebook   译文出处:penkzhou   欢迎分享原创到伯乐头条 作为世界上最大的社交网络,Facebook的Android客户端面临着各种各样的使用环境(地理环境.Andro ...

  6. The type org.apache.http.HttpResponse cannot be resolved. It is indirectly referenced from required

    在Android 6.0(API 23)中,Google已经移除了移除了Apache HttpClient相关的类.HttpResponse类.缺失jar包使用HttpResponse等会报错: Th ...

  7. win8如何共享文件夹

    最近小编接手了市委组织部考核项目,各种文档.ER图.原型图,组员之间需要拷来拷去,很不方便,通过飞信,QQ传输吧,文件太大,网络太慢,所以还是不行,于是小编就想起来要共享,以前也映射过别人的共享,觉得 ...

  8. Spring入门介绍-AOP(三)

    AOP的概念 AOP是面向切面编程的缩写,它是一种编程的新思想.对我们经常提起的oop(面对对象编程)有一定的联系. AOP和OOP的关系 AOP可以说是oop的某一方便的补充,oop侧重于对静态的属 ...

  9. 2.QT中操作word文档

     Qt/Windows桌面版提供了ActiveQt框架,用以为Qt和ActiveX提供完美结合.ActiveQt由两个模块组成: A   QAxContainer模块允许我们使用COM对象并且可以 ...

  10. 1.QT中播放视频,录音程序的编写

     1  通过process的方式播放视频 T22VideoPlayer.pro HEADERS += \ MyWidget.h SOURCES += \ MyWidget.cpp QT += gu ...