这个教程不是刷机,而是安装Magisk,通过Magisk就可以获取Root权限,而且获取的Root权限比系统提供的Root权限更全面,因为手机提供的是阉割版的Root权限。
刷机分为线刷和卡刷,用到的固件分别为线刷包和卡刷包,我所了解的是卡刷不能降版本,而线刷可以。有兴趣或需求的可以查看相关官网教程,这里不做过多介绍。
0. 解BL锁
先打开开发者选项,查看手机是否已解BL锁,没有的话看看是否能解锁成功,不能解锁成功的话,要去开发者选项里面先绑定小米账号,因为解锁要绑定 小米账号之后等待7天 才可以操作,而且重新绑定会导致从现在算起。详细教程请看官方教程: miuiver.com/how-to-unlo...
1. 下载卡刷包
- 去官网或者三方rom资源下载对应的 卡刷包
- 手机型号要一致
- 系统版本号要一致
手机型号以及当前系统的版本号一定要一致,而且一定要下载卡刷包,因为这个教程不是刷机,而是安装Magisk。
下载Rom资源由于众所周知的原因被限速,所以可以尝试使用迅雷下载以及翻墙(翻墙不一定管用)。
2. 下载并安装安装Magisk app
3. 准备镜像资源
安装好Magisk App并启动之后,如果Ramdisk
后面显示 是,则说明该设备的分区中是否含有 ramdisk。
- 如果设备中没有
boot ramdisk
,则需要复制一份recovery.img
。 - 如果设备含有
boot ramdisk
, 则需要复制一份boot.img
或init_boot.img
(如果有的话)。
对于出厂安卓版本 ≥ 13 的设备(例如:小米13),ramdisk 的情况有所不同,此时 ramdisk 被单独放置在一个名为 init_boot 的分区中,而那些安卓版本低于13的以及从安卓12升级到安卓13的设备,ramdisk 依然在 boot 分区中。
现如今,固件包中的各分区镜像都被打包成 payload.bin 文件,不再是分散的镜像文件,因此需要借助 payload_dumper 等工具进行提取,你可以从 github、XDA、酷安中找到相关工具,也有人制作了安卓版本的提取工具。
将boot.img
或 init_boot.img
或 recovery.img
文件复制到手机 Download
文件夹下。
4. 用magisk修补boot文件
- 启动magisk应用
- 首页 -> 点击安装
- 如果你要修补
recovery
镜像,请选中 "恢复模式 " 选项。(含有ramdisk
的设备不显示此选项) - 如果您的设备没有 单独的
vbmeta
分区,请选中 "Patch vbmeta in boot image " 选项。(含有vbmeta
分区的设备不显示此选项) - 点击下一步,出现
方式
选项,勾选选择并修补一个文件
- 点击 选择并修补一个文件 ,然后选择事先准备好的
boot.img
或init_boot.img
或recovery.img
文件。 - 修补成功会在
Download
文件夹下生成一个magisk_patched-xxx.img
检查设备是否有单独的vbmeta
分区
-
通过命令行:
adb shell ls -l /dev/block/by-name
如果你找到了vbmeta
、vbmeta_a
或vbmeta_b
,那么你的设备有一个单独的vbmeta
分区。 -
如果您的官方固件包包含
vbmeta.img
,那么你的设备有一个单独的vbmeta
分区。
5. 准备 adb-fastboot
- 电脑下载 adb-fastboot
- 解压 adb-fastboot 文件
- 手机usb连接电脑,文件传输模式,将第四步生成的
magisk_patched-xxx.img
文件复制到adb-fastboot
目录
6. fastboot
-
手机usb连接电脑,手机重启到 fastboot 模式(按电源键重启 马上按住 音量键 --)
-
双击
adb-fastboot
目录下的打开CMD命令行.bat
-
在命令行刷入: 如果你要刷入的是
boot
镜像:fastboot flash boot /path/to/magisk_patched.img
; 如果你要刷入的是init_boot
镜像,则是:fastboot flash init_boot /path/to/magisk_patched.img
; 如果你要刷入的是recovery
镜像,则是:fastboot flash recovery /path/to/magisk_patched.img
。 -
出现下面这三行代码,就是成功刷入了
css
Sending 'boot' (131072 KB) OKAY [ 3.311s]
Writing 'boot' OKAY [ 0.441s]
Finished. Total time: 3.794s
-
(可选)如果您的设备有单独的
vbmeta
分区,您可以使用以下命令修补vbmeta
分区:fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img
-
重启手机,启动Magisk应用,显示Magisk的版本,就是刷好了的。
温馨提示
如果刷模块不兼容或者其他骚操作导致不能开机,可以把我们前面提取的boot.img通过fastboot刷回去,恢复原系统,一般都能正常开机! boot.img保留一份在电脑,避免出问题了可以自救下!还原boot指令
fastboot flash boot boot.img
7. 安装LSPosed
- 下载LSPosed最新的版本
zygisk
类型的zip文件。 - 将下载的zip文件复制到手机
Download
文件夹下。 - 打开
Magisk
App的模块页,点击从本地安装
,并选择Download
文件夹下对应的zip文件。
8. Hide magisk and root
1. 安装Shamiko
- 下载最新的Shamiko zip文件
- 将下载的zip文件复制到手机
Download
文件夹下。 - 打开
Magisk
App的模块页,点击从本地安装
,并选择Download
文件夹下对应的zip文件。
2. 隐藏Magisk应用
- 打开Magisk app,并点击
设置
。 - 点击 隐藏
Magisk
应用,并随意取一个名称。 - 可以看到
Magisk
包名变成一个随机的包名。
3. Shamiko
切换至白名单模式
- 下载:MT管理器 ,授权 ROOT 权限
- MT管理器 打开目录
/data/adb/shamiko
,创建whitelist
文件(是文件,不是文件夹。不要搞错了哦) - 重启手机,成功切换白名单模式。
9. 修改 ro.debuggable
属性值,使得可以调试三方应用
- 打开magisk app,进入模块搜索或去github官网下载
MagiskHide Props Config
并安装。 - 重启手机,进入
adb shell
模式 - 执行命令
props ro.debuggable 1
- 然后按照命令行提示,输入
y
,直到让你输入重启的指令,重启手机之后就可以查看是否生效。 - 重启之后进入 adb shell模式。
- 输入命令:
getprop ro.debuggable
如果是1
,恭喜你可以进行动态调试生产包了。
MagiskHidePropsConf:github.com/Magisk-Modu...