这里介绍的是windows下安装Ubuntu来下载Android源码,对应的系统版本要求如下:



Android 6.0 (Marshmallow) - AOSP master: Ubuntu 14.04 (Trusty)
Android 2.3.x (Gingerbread) - Android 5.x (Lollipop): Ubuntu 12.04 (Precise)
Android 1.5 (Cupcake) - Android 2.2.x (Froyo): Ubuntu 10.04 (Lucid)

首先需要安装VMware和Ubuntu 14.04

  • Ubuntu 14.04下载地址:http://www.ubuntu.org.cn/download/alternative-downloads (需要翻墙)
  • Ubuntu 的安装就不具体介绍了,需要注意的是最好保证Ubuntu的存储空间有100G以上,以免以后不够用;运行内存稍微大点,免得运行虚拟机太卡

安装好Ubuntu以后,在下载Android之前需要安装一些依赖

  • Python,这个Ubuntu里已经自带了,不需要另外装
  • Java ,安装Oracle Java 1.8
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
  • Git, Android源码都是通过git来进行版本管理的
sudo apt-get install git
  • Git安装好以后需要配置用户名和邮箱,就是GitHub上的用户名和邮箱
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
  • 其他的一些依赖:
sudo apt-get install git-core gnupg flex bison gperf build-essential \
  zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
  lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache \
  libgl1-mesa-dev libxml2-utils xsltproc unzip

源码下载

  • 首先需要下载repo工具,它是Google开发的一个专门用于下载Android源码的脚本文件(需要翻墙)
mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
  • repo工具安装好以后就需要新建一个目录用于存放Android源码,然后执行repo命令下载
mkdir Android 
cd Android 
repo init -u https://android.googlesource.com/platform/manifest
repo sync
  • 上述下载需要翻墙,下载时间一般至少需要5个小时,大小差不多25G。中间如果关机了或是其他原因导致下载中断了的话,只需要重新执行 repo sync命令即可继续下载。
  • 上述命令下载的是最新版本的源码,也可以下载指定版本的源码,直接在repo init时附加对应的版本号即可:
//比如要下载7.0版本的源码
repo init -u https://android.googlesource.com/platform/manifest -b android-7.0.0_r27
wget https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar # 下载初始化包
tar xf aosp-latest.tar
cd AOSP   //解压得到的 AOSP 工程目录

//这时 ls 的话什么也看不到,因为只有一个隐藏的 .repo 目录
repo sync  //正常同步一遍即可得到完整目录,或 repo sync -l 仅checkout代码