最近喜欢刷机,买了一台crDroid支持列表中唯一的Ace系列设备,拿来刷机。
要求
- 一加 Ace 3 Pro 一台。
- 一台电脑。
准备工作
下载ADB
Android Debug Bridge,安卓调试桥,简称ADB,是一种在电脑上与手机进行调试的工具(刷机专用工具)。我们需要下载它才可以开始我们的刷机之路。
下载ADB的方法很简单,只需要在这里下载,然后解压就可以了。
开发者选项
我们需要打开开发者选项才可以解锁Bootloader锁,以下是开启开发者选项的方法:
- 打开“设置”。
- 选择“关于本机”。
- 如果有详细信息的话就点详细信息。(因为刷机刷久了就忘了Color OS长啥样了)
- 点击Build号(可能是版本号)好几次。
- 输入密码。
解锁Bootloader
Bootloader就像是一把锁,在出厂时就被锁住,不解开这把锁就没法刷机了。
解锁步骤:
警告:以下步骤会清除数据!
- 打开设置里的系统选项。
- 选择开发者选项。
- 打开OEM解锁开关。
- 关机。
- 同时按下音量减和电源键。
- 连接电脑。
- 在adb目录下打开终端。
- 输入:fastboot flashing unlock。
- 按下音量减后按下电源键。
对Mac、Linux及PowerShell用户
直接输入“adb”等指令可能不管用,所以需要加上“./”。
例如:
./adb [COMMAND HERE]
开始刷机
环境准备完了就可以快乐地刷机了,但是需要先下载几个文件。
下载文件
在https://crdroid.net/corvette/11点击“Recovery”和“Download Latest Version”,会下载一个.img文件和一个.zip文件,他们分别是Recovery镜像和系统包。
刷入系统
首先,打开adb并在手机打开fastboot,过程这里不再赘述。
其次,在电脑上输入:
fastboot flash recovery (recovery文件路径)
然后进入Recovery。
警告:以下步骤会清除数据!
在手机上会出现一个红色菜单,先选择”Factory Reset”和“Format data/factory reset”,此刻数据就会被全部清除,再选择选择“Apply Update”和“Apply from ADB”,ADB Sideload就开始了。
然后,在电脑上输入:
adb sideload (系统包路径)
等一会,进度条会卡在47%,此时手机上会问你是否安装附加包,选择No。
最后选择“Reboot system now”。
设置与超级用户
恭喜你,你已经进入了crDroid,可喜可贺!
设置一下,就可以开始自定义了。(别忘了开启开发者选项!)
首先,在开发者选项里打开USB调试,然后你就可以用adb操控电脑了。
如果你要把它当成主力机的话,到这里就可以结束了。
但是,你肯定想打开root,成为手机的操控者。
超级用户
方案介绍
市面上主要流行几种主要的root方案, 分别是:
Magisk
Magisk,俗称面具,是一个通过修改ramdisk来执行root的方案。
优点:对于市面上的应用与模块兼容性强。
缺点:容易被App发现,有时候必须设定排除列表才可以正常启动App。
KernelSU与Apatch
KernelSU,简称KSU,是一款通过修改内核来获取root权限的一种方案。
Apatch类似于KSU,但似乎对老机型友好。
优点:不容易被App发现,不给App Root权限都检测不出来。
缺点:可能不支持一些App或模块。
开始root
我们可以用三种方法刷入(基本上是两种方法)root。
修补boot/init_boot
一些新机型可能需要修补init_boot,还有一些机型需要修补init_boot(这里将init_boot简称为ib)(我们要用的一加Ace 3 Pro需要修补ib)
首先,把刷机包里的payload.bin提取出来,其次,使用payload_dumper_go(Github Releases)。
然后,在程序目录打开终端并输入:
payload-dumper-go -p init_boot -o ./ (payload.bin地址)
我们得到了ib,接下来,在手机中打开文件传输模式,将提取出来的ib发送到手机,然后在面具/KSU/Apatch中修补,再将修补后的ib传回电脑。
将手机重启到fastboot,在电脑的adb目录的终端输入:
fastboot flash init_boot (修补后的ib地址)
将手机退出fastboot并开机,恭喜你root成功!
刷入GKI(仅限KSU)
首先,在KSU/Apatch的Github Release中下载对应的GKI。
这么一堆内核我选哪一个?
这里引用KSU官网的一句话:
KMI 全称 Kernel Module Interface,相同 KMI 的内核版本是兼容的 这也是 GKI 中“通用”的含义所在;反之,如果 KMI 不同,那么这些内核之间无法互相兼容,刷入与你设备 KMI 不同的内核镜像可能会导致死机。
具体来说,对 GKI 的设备,其内核版本格式应该如下:
KernelRelease :=
Version.PatchLevel.SubLevel-AndroidRelease-KmiGeneration-suffix
w .x .y -zzz -k -something
其中,w.x-zzz-k 为 KMI 版本。例如,一个设备内核版本为5.10.101-android12-9-g30979850fc20,那么它的 KMI 为 5.10-android12-9;理论上刷入其他这个 KMI 的内核也能正常开机。
请注意,内核版本中的 SubLevel 不属于 KMI 的范畴!也就是说 5.10.101-android12-9-g30979850fc20 与 5.10.137-android12-9-g30979850fc20 的 KMI 相同!
然后,手机重启fastboot,电脑adb终端输入:
fastboot flash boot (你下载的boot镜像目录)
手机重启到系统,恭喜你Root成功!
直接刷写/刷入到另一个槽位
这两种都需要你拥有root,所以这个基本不算。
直接刷写:通常用于更新root的时候使用。
刷入到另一个槽位:在手机进行OTA更新只剩重启这一步的时候执行,可以将root权限继承到系统的新版本。
美化手机
crDroid设置
这个设置里有很多功能,基本把Iconify的功能都移植了。
Iconify
这个软件需要root,但它比crDroid设置里的功能要多得多。
当然,可能会冲突。
结尾
在刚才,我们一起完成了,解锁Bootloader,刷入crDroid,获取root权限,让我们成为了这台手机真正的主人,虽然有些人可能会说:”root、刷机,没什么用,纯纯炫技而已。“,但我们认为在这个手机的性能到处被限制的时代,我们更需要root和刷机!我是WaterMark,下一篇文章再见!