android 源码repo下载方式

时间:2022-12-17 22:14:35

       android源码之前我都是通过百度云网盘下载别人上传的源码,好处就是下载速度快,下载的源码压缩过,方便拷贝存储;但是也有缺点,拿到的代码不是第一手资料,不知道里面有没有经过别人修改过。所以我还是想试一下直接从android网站下载源码,只不过android网站貌似被墙了,上网搜了一下,原来清华大学做了代码库的镜像,对于不能*的人来说简直是福音。

一、下载 repo 工具:

mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

由于~/bin目录不是linux的系统目录,以后每次要下载新的源码都需要执行

PATH=~/bin:$PATH
这样有点麻烦,其实可以把repo执行文件下载到/usr/bin/目录下

curl https://storage.googleapis.com/git-repo-downloads/repo > /usr/bin/

二、修改repo脚本文件中的下载源为清华大学下载源地址

REPO_URL='https://gerrit-google.tuna.tsinghua.edu.cn/android/git-repo'

三、建立一个android源码存放的目录

mkdir android_source
cd android_source

该目录的空间最好预留大一点的空间,50G左右最好。

三、执行repo初始化的命令

repo init -u https://aosp.tuna.tsinghua.edu.cn/android/platform/manifest -b android-2.3.1_r1
最后一个参数“android-2.3.1_r1”是android源码的版本号,具体版本可以上android官网查询:查询网址:https://source.android.com/source/build-numbers#source-code-tags-and-builds

四、同步源码树(以后只需执行这条命令来同步):

repo sync
如果遇到网络不通的情况需要重新输入该命令,也可以写一个断网自动连接的脚本自动完成。

repo sync脚本(在源码目录下建立脚本:vi down.sh):

#!/bin/sh
repo sync -j16
while [ $? -ne 0 ]
do
repo sync -j16
done

执行下载命令:sh down.sh即可同步源码


那到底什么时候是下载完成的状态呢,下载完成后会有这样的提示:
Fetching projects: 100% (486/486), done.  


参考资料:

1.清华软件镜像站:https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/

2.Ubuntu环境中的Android源代码下载

3.android版本号的官网:https://source.android.com/source/build-numbers#source-code-tags-and-builds