深入理解Android卷III 第1章 开发环境部署



第1章         开发环境部署

本章的主要内容:

  • 介绍获取Android源代码的方法

  • 介绍如何将Android源代码导入到IDE中以方便代码阅读

  • 介绍如何对AndroidJavaC/C++源码进行调试

1.1 获取Android源代码

在进行Android的深入研究之前,首先必须获得一套Android的源代码。Google在如下页面中提供了使用从官方渠道获取Android源码的方法:

  • https://source.android.com/source/downloading.html

这个页面介绍了使用repo脚本进行Android源码的下载的两个基本步骤。

  1. 首先是通过repo init命令将当前文件夹初始化为repo脚本的工作区。其命令格式如下:

repo init -u <repository地址> -b <分支名称>

repo init命令会在当前文件夹下会创建一个.repo文件夹,并从-u参数所指定的repository中下载一个manifest.xml文件到这个.repo文件夹中。这个manifest.xml文件中定义了Android源码中所有git项目的清单,如下所示:

[manifest.xml]

<manifest>

  ......

 <project name="platform/frameworks/base"path="frameworks/base" revision="..."/>

 <project name="platform/packages/apps/Music"

                                              path="packages/apps/Music"revision="..."/>

  ......  <!-- 其他的项目的定义 -->

</manifest>

其中每一个project项都描述了一个git项目,而每一个git项目中则包含了负责某项功能的源代码。其中name属性指定了git项目的名称,path属性指定了git项目将被下载到拿一个文件夹,而revision则指定了需要下载git项目的哪一个分支。上述manifest.xml片段中所给出的两个git项目分别存储了Android基本框架的代码以及Music应用程序的代码,它们将被分别下载到frameworks/base以及packages/apps/Music文件夹下。

  1. 在完成了repo工作区的初始化之后,便可以通过repo sync命令进行代码的下载工作了。repo sync命令的原理就是解析.repo/manifest.xml中的内容,然后通过git工具逐个下载清单中所列举出来的git项目。repo sync可以接受-j参数进行多线程的代码下载以提高其下载速度,例如repo sync -j8将使用8个线程。

由于整套Android源码有数百个这个样的git项目组成,因此进行Android源码的完整下载是非常耗时的。倘若开发者只关心其中的某个部分,例如上述manifest.xml片段中所给出的Music应用程序的代码,那么可以这么做:

repo sync platform/packages/apps/Music

也就是说,在reposync后面添加git项目的名称作为参数可以单独下载这个项目的代码。在迫切地需要对Android的某个局部模块进行研究时,这个命令十分有用。

说明 其实manifest.xml其实也隶属于一个git项目,而这个git<

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值