android源码下载

众所周知,android是由google开发的,但是,国内没法访问google的服务器下载源码,解决办法有2个

  • 通过vpn去访问google,可以获得最新的代码,但相当麻烦
  • 通过国内的mirror镜像同步代码,最常见的2个mirror是aurora和清华asop,前者主要面向高通处理器,后者和google服务器同步,但存在时间差

repo url

  • 下载

    1
    2
    3
    
    curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
    chmod +x repo
    为了方便可以将其拷贝到你的PATH里。
    
  • 更新

    1
    2
    3
    4
    
    repo的运行过程中会尝试访问官方的git源更新自己,如果想使用tuna的镜像源进行更新,可以将如下内容复制到你的~/.bashrc里
      
    export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/'
    并重启终端模拟器。
    

建立清华asop子镜像

  • 初始化:

    1
    
    repo init -u https://aosp.tuna.tsinghua.edu.cn/mirror/manifest --mirror
    
  • 同步源码树:

    1
    
    repo sync
    
  • 同步完成后,运行 git daemon –verbose –export-all –base-path=WORKING_DIR WORKING_DIR (WORKING_DIR为代码树所在目录) 。此后,其他用户使用 git://ip.to.mirror/ 作为镜像即可。

同步代码

本文以android 8.0为例,首先创建Android_src文件夹,然后在该文件夹内运行

1
2
3
    repo init -u git://10.27.9.37/platform/manifest -b android-8.0.0_r4
    repo sync -c -j 8     # -c参数强制只下载android-8.0.0_r4这个branch,可以减少网络压力  -j 8表明8个下载线程,可以加快下载速度
    repo start master --all

编译

1
2
3
    .build/envsetup.sh
    lunch     # 选择编译设备
    make -j 8     # 8个线程编译,线程数一般是cpu的2倍