关于这个网上已经有了很多可以参考 https://source.android.google.cn/setup/build/downloading   https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/

这个人写的也非常赞 https://kswapd.cn/article/aosp-build-to-evaluator/   https://kswapd.cn/article/aosp-build-to-pixel/?share=facebook

这里简单记录一些过程和一些问题。

一.repo下载好,以后有两种方式拉取代码。(国内无法直接使用google源,一般都是用清华或者科大的镜像拉取代码)

  1.下载初始化的压缩包(参考 https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/ 中的操作描述)

  2.使用 repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-10.0.0_r40 这类命令初始化

  建议使用1的方法,下载压缩包解压速度更快一些。方法二的下载速度更慢。

  其中比较严重的问题是经常碰到同步不下来的情况,遇到这类情况可以单独同步。 repo sync path。如果提示index.lock的问题,干掉对应的文件再次同步可以解决。

二.下载手机对应驱动。我们这里使用的是google的pixel3手机

  1.驱动需要对应自己下载的源代码标记,参考以下两个网站进行对应。

  https://source.android.google.cn/setup/start/build-numbers  下拉可以看到类似这样 QQ3A.200705.002 android-10.0.0_r40

  android-10.0.0_r40对应我们拉取源码时候的分支 QQ3A.200705.002是这个分支的build号 

  https://developers.google.com/android/drivers  在这里就可以根据手机型号和build号找到对应的驱动版本了

  2.驱动下载后。解压后运行脚本,运行时会需要输入接受协议,按照提示输入即可,得到一个vendor文件夹,把这个文件夹复制到aosp目录下。

三.编译 

  1.如果没有异常情况,编译ok。如果遇到异常的killed,我们是重启机器解决的...如果是编译文件那里报错,可以参考http://aosp.opersys.com/xref/android-10.0.0_r40/xref/ 这个网站进行对比,看看是否是文件不正确。酌情进行修改。

四.刷机

  1.如果按照网上说的,使用fastboot -w flashall有问题的话。可以https://developers.google.cn/android/images从这里下载出厂的镜像,这里面本身包含了刷机的脚本。脚本我还没有研究里面具体的设置意义,但是可以通过替换里面的文件来达到刷机的目的。