一、下载安卓源码
1.1、安卓源码在哪
谷歌官方:https://android.googlesource.com
国内镜像源: 清华大学 https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/ 或者 中科大 https://mirrors.ustc.edu.cn/aosp/
想从谷歌官方下载源码,需要科学上网。下载量很大,咱就选国内源。
1.2、怎么下载
源码引用了很多外部的开源工具,每个子项目都是git仓库管理,所以下载要使用谷歌官方推出的代码管理工具——Repo
①安装Repo:
mkdir ~/bin #创建一个目录用来保存repo
cd ~/bin
PATH=~/bin:$PATH #把repo的路径加入PATH
#curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo #开科学上网
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo #用清华大学的
chmod a+x ~/bin/repo #给repo赋权限
下载repo后,vim repo,修改里面的REPO_URL下载路径为清华大学源网址。
找到REPO_URL,改为 REPO_URL="https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/
"
②创建存储AOSP源码的目录以及初始化
cd ~/bin
mkdir aosp810 #定义工作目录
cd aosp810
初始化仓库:
repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest
--如果需要某个特定的 Android 版本。一般都是选择这个。
repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-8.1.0_r1
执行后出现若干提示,按Y。
安装完成后,当前目录下会有 .repo 目录。
若是觉得有路径,版本错误啥的,删除 .repo,重新进行初始化仓库。
③同步源码树(以后只需执行这条命令来同步):repo sync。
--repo有不少命令,自行百度。-j 是线程数,不加默认4线程。-c是只更新当前支线。
会有漫长的下载时间,网络断了,就重新:repo sync
1.3、下载安卓版本对应自己想刷机型号的驱动
到http://source.android.com/setup/start/build-numbers#source-code-tags-and-builds
找到Build ID,然后到安卓驱动网找到对应版本,支持设备型号的驱动文件。
下载下来后,解压后放到 当前工作目录下(~/bin/aosp810/),然后执行 *.sh文件,会出现一堆文字,然后按键盘下箭头键,直到提示输入I ACCEPT,踏实输入后,会在aosp810下出现vendor目录,驱动就安装在里面。
比如,我下载的是android_8.1.0_r1 Nexus5x的驱动:extract-lge-bullhead.shqcom-bullhead-opm1.171019.011-79a898aa.t