花了一天时间踩各种坑修改源码编译了一个能用的版本(基于V40,暂时无法解密原生data),仅在Pie (9.0)上测试通过。
安装方式有两(三)种:
注意:所有TWRP的安装方式都会替换掉boot分区的ramdisk,意味着Magisk会被清除。 只需要在安装好TWRP之后重启进入再刷入Magisk-vXX.X.zip即可。
- 如果你已经有Magisk (面具),可以刷入
twrp-installer-vX.X.X-v35_#.zip
(#对应安装的slot,例如a则代表安装到slot a) - 如果没有现成的Magisk,建议先备份boot_a分区内容,然后刷入
twrp-vX.X.X-v35.img
由于此镜像的内核是从V350ULM20e提取的,在其他型号上的效果待测。 - 利用boot.img编辑工具,你可以手动把原版boot提取的
zImage
和下载的ramdisk-twrp.cpio
合成为新的含TWRP的boot镜像。具体操作和原理可以参考本项目首页魔改TWRP部分
注意:如果你对slot A/B的概念不熟悉,可以阅读Project Treble相关的文章。 单来说就是手机内系统需要的分区统统准备了两份,系统更新的时候旧的系统能保留在另一个slot中应急。在一个时间点真正被用到的只有一个slot(通常是a),所以一般你只需要安装到你实际在用的slot即可。使用fastboot getvar current-slot
可以获取当前激活的slot的信息。