1.下载repo工具
mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
2.修改repo中的下载源
因为google官方网站在国内无法访问,所以将下载源改为清华大学下载源,vim ~/bin/repo 将REPO_URL替换成:
REPO_URL='https://gerrit-google.tuna.tsinghua.edu.cn/git-repo'
3.同步源代码
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b 分支名
repo sync -j4
分支名可以从https://source.android.com/source/build-numbers#source-code-tags-and-builds 该网站获取,j4表示并发数
4.源代码目录含义
目录名 | 描述 |
---|---|
abi | 应用程序二进制接口 |
bionic | C/C++运行时库,在NDK程序中很大一部分调用就是这里的程序 |
bootable | 用于Android装载和启动程序,其中就包括bootloader和recovery。bootloader是Android中唯一在LInux内核之前执行的程序。通过这段程序可以初始化硬件,建立内存控件的映射图等,总之,bootloader就是为LInux内核准备合适的运行环境。 |
build | 用于编译Android源代码以及建议system.img,ramdisk.img等文件的工具 |
cts | 用于兼容性测试的工具 |
dalvik | Dalvik虚拟机的源代码 |
development | 高层的开发和调试工具 |
device | 与设备相关的代码 |
docs | 包含与Android源代码项目的文档和工具,如Dalvik虚拟机格式文档等 |
external | 扩展工具的源代码 |
framworks | Android框架层源代码。也就是Android SDK的源代码 |
hardware | 硬件层接口和库 |
libcore | Java核心库 |
ndk | NDK相关的源代码 |
packages | 与Android系统一同发布的应用程序的源代码 |
prebuilts | Android在各种平台下编译之前要使用的工具 |
sdk | 在开发环境中使用的工具,如ddms,draw9path,sdkmanager等 |
system | Android的基本系统 |
3.出现的错误
运行$ repo sync -f –j4 命令解决
参考文献
http://www.jianshu.com/p/aeaceda41798
http://blog.csdn.net/zxcjie/article/details/51221299