一.源码获取途径
Android源码获取途径大致分为三种:
1.芯片厂商
谷歌发布新版本源码之后,芯片厂商会根据自己的芯片特性进行适配。如高通、瑞芯微等厂商。
2.方案公司
方案公司从芯片厂商获得已适配版本,并在其基础上做一些定制化的修改。
3.谷歌网站
前两种途径需要适配时间,周期较长。如果想更早的获取到 Android 源码,可以直接下载谷歌官方的源码。
本文以第3种途径为例讲解Android源码的下载方法。
二.安装repo工具
2.1 什么是repo
Repo是我们在Git之上构建的一个工具。Repo帮助我们管理许多Git存储库。Repo并不是要取代Git,只是为了在Android环境下更容易使用Git。repo命令是一个可执行的Python脚本,您可以将其放在路径中的任何位置。
2.2 下载repo
2.2.1 创建repo保存目录
例如,保存在~/bin目录中:
mkdir ~/bin
2.2.2 下载
1.从谷歌网站下载
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
由于墙的原因,可能会出现如下错误:
curl: (7) Failed to connect to storage.googleapis.com port 443: Connection refused
2.使用国内代理服务器下载
curl -sSL 'https://gerrit-googlesource.proxy.ustclug.org/git-repo/+/master/repo?format=TEXT' |base64 -d > ~/bin/repo
3.直接从国内mirror网站下载
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
2.2.3 环境变量配置
1.让repo脚本具有可执行权限
chmod a+x ~/bin/repo
2.repo路径添加到PATH变量中
(1)临时生效
export PATH=~/bin/:$PATH
(2)永久生效
在~/.bashrc文件末尾添加以下语句:
export PATH=~/bin/:$PATH
然后执行以下命令即可生效。
source ~/.bashrc
或者,重新打开一个终端。
2.2.4 更新
repo的运行过程中会尝试访问官方的git源更新自己,由于墙的原因,可能会导致更新失败。因此,建议指定国内的mirror源进行更新。
可以将如下内容复制到你的~/.bashrc里。
export REPO_URL='http://mirrors.tuna.tsinghua.edu.cn/git/git-repo'
注意:如果此处使用“https”协议,可能会报如下错误:
Downloading Repo source from https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/
fatal: Cannot get https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/clone.bundle
fatal: error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:852)
fatal: double check your --repo-rev setting.
fatal: cloning the git-repo repository failed, will remove '.repo/repo'
将https协议改为http协议,即可解决此问题。
三. Android源码下载
3.1 初始化仓库
下载 repo 仓库,并指定 android 版本:
repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-4.0.1_r1
3.2 同步源码树
下载Android源码。默认4线程下载,也可通过-j选项指定线程数。文章来源:https://www.toymoban.com/news/detail-858430.html
repo sync
若出现同步错误,可尝试使用以下指令:文章来源地址https://www.toymoban.com/news/detail-858430.html
repo sync -j1 --fail-fast
到了这里,关于Android源码下载方法详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!