手把手教你aosp android 12 pixel 解锁oem 编译刷入大全

hi,因为同学们学完了我的课程后,开始想玩一下google的pixel实体机,不想一直玩模拟器了,那么千里马老师今天也在咸鱼上掏了一个pixel 3来给大家展示一下这个google的机子怎么玩,其实我自己本身是有小米的lineage系统在玩,为了满足广大粉丝的好奇心也就自掏腰包买了个pixel玩,下面我们正式开始记录整个pixel 3的刷入自己编译修改的aosp代码:
入门课,实战课,跨进程专题,input专题
ps需要学习深入framework课程和课程优惠
新课程优惠获取请加入qq群:422901085(获取demo源码)

1、开始前准备

前期我有2篇blog大家可以先去按blog搭建好,然后再来看这篇哈
aosp环境搭建:
https://blog.csdn.net/learnframework/article/details/107887594 Ubuntu16的看这里
https://blog.csdn.net/learnframework/article/details/121345533 Ubuntu 20看这里

实体硬件准备个pixel,我这里是pixel 3
手把手教你aosp android 12 pixel 解锁oem 编译刷入大全_第1张图片

2 解锁pixel 3

2.1 adb 连接pixel 3
Ubuntu环境下需要在udev下加上对应rule

test@test-Lenovo:~$ cat /etc/udev/rules.d/51-android.rules 
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"

然后reboot电脑
2.2 开启adb开关和oem开关(加入开发选项方法:设置–》关于手机–》编译版本)
手把手教你aosp android 12 pixel 解锁oem 编译刷入大全_第2张图片开usb调试(如果会有弹出允许设备调试弹框,选择允许既可以)
手把手教你aosp android 12 pixel 解锁oem 编译刷入大全_第3张图片
开启oem解锁
然后在Ubuntu终端输入如下,可以看到对应的手机设备

test@test-Lenovo:~$ adb devices
List of devices attached
89DY05ZHM	device

2.3 进入解锁模式

test@test-Lenovo:~/aosp$ adb reboot bootloader
//进入BootLoader模式
test@test-Lenovo:~/aosp$ fastboot devices
89DY05ZHM	fastboot
//查看fastboot模式下是否有设备
test@test-Lenovo:~/aosp$ fastboot flashing unlock
OKAY [  0.031s]
Finished. Total time: 0.031s
//执行解锁

上面命令执行完成后,还需要手机上进行确认操作
手把手教你aosp android 12 pixel 解锁oem 编译刷入大全_第4张图片这时候还处于locked,按音量上下键可以
手把手教你aosp android 12 pixel 解锁oem 编译刷入大全_第5张图片

点击power键确认解锁既可以,然后fastboot reboot重启即可以

成功解锁Bootloader!至此解锁bootloader加载程序后,每次手机启动时,你都会见到一条警告,提示解锁了,这个其实没关系本来我们就是要解锁。

3、下载对应的vendor和驱动包

下载地址如下:
https://developers.google.cn/android/drivers
根据自己手机型号取这里里面点击下载对应的,我们这里选择下载android 12的最新版本
手把手教你aosp android 12 pixel 解锁oem 编译刷入大全_第6张图片
手把手教你aosp android 12 pixel 解锁oem 编译刷入大全_第7张图片在这里插入图片描述把以上压缩包解压得到两个.sh文件拷贝到aosp的根目录
在这里插入图片描述然后在aosp根目录分别执行2个sh:

test@test-Lenovo:~/aosp$ ./extract-qcom-crosshatch.sh
(会提示按Enter键,这里一直按,到最后一行输入“I ACCEPT”就可以)

然后会执行解压

4、编译刷入

4.1 aosp部分请切到一个android-12的分支
这里可以考虑进入.repo/manifests下面直接进行checkout

test@test-Lenovo:~/aosp/.repo/manifests$ git branch 
* android-12.0.0_r32

checkout后
到根目录进行 repo sync就可以
4.2 编译刷入
上面所有步骤完成后既可以进入无脑的编译和刷入了

 1. build/envsetup.sh 
 2、 lunch aosp_crosshatch-userdebug 
 //选择正取产品目标
 3make -j 20
 4cd out/target/product/crosshatch/
  //进入out下镜像目录
 5、 adb reboot bootloader
 //进入bootloader
 6、fastboot flashall -w 
   //刷入out下面所有镜像

//注意这里crosshatch是产品代号,可以在https://developers.google.cn/android/drivers根机型查看

你可能感兴趣的:(Android,Framework,系统源码,android)