Magisk 教程
目录
Magisk 系列教程 (基于 v24.3)
什么是Magisk ?
- Magisk 是 Android OS 下的一套完整的 Super User 解决方案
- Magisk 支持 Android 5.0 以上的设备
Magisk 中的组件
- MagiskSu: 为应用程序提供
root
访问权限 - MagiskBoot: Android 下的 镜像文件工具
- Zygisk: Magisk 提供的 zygote process 注入器
- MagiskManager: Magisk 的管理器, 也是用户操作的接口
如何安装 Magisk
-
必要条件: 一台电脑
-
必要条件: 一台安卓设备
- 注意: 您的安卓设备必须解锁 (Unlock) 引导加载器 (BootLoader)
- TODO: 各个手机厂商所生产的设备 BootLoader 的解锁方式都不相同; 所以此处未能贴出详细解锁教程
-
本文使用的设备为: Xiaomi 8 SE
-
首先: 下载手机当前的
Rom.zip
文件- TODO: 请到设备官网下载对应的 Rom; 小米设备可以直接在系统设置中下载
- 打开设置 -> 我的设备 -> 系统版本(MIUI版本) -> 右上角菜单 -> 下载最新完整包
- 下载完成之后会保存在
/sdcard/Download/
文件夹中查看图片
-
下载好之后将
Rom.zip
发送到电脑上进行解压- 在解压后的文件夹中找到
boot.img
文件, 将它发送到手机中等待下一步操作 - 如果不存在
boot.img
文件, 只存在payload.bin
文件, 那么请下载解包工具- 将解包工具解压
- 将
payload.bin
复制到解包工具的payload_input
文件夹下 - 双击
payload_dumper
程序, 执行解包动作, 时间可能会有一点长 - 解包完成后打开
payload_output
文件夹就可以找到boot.img
文件了
- 在解压后的文件夹中找到
-
然后: 打开 Magisk 的 Github Releases 页面下载最新的 apk 文件到手机中
查看图片
-
安装刚刚下载的安装包并打开
-
点击 主页 -> Magisk -> 安装 -> 选择并修补一个文件
-
找到我们发送到手机中的
boot.img
文件并 点击开始 -
显示成功后就会生成一个
magisk_xxxx.img
文件到/sdcard/Download/
文件夹中 -
最后: 将
magisk_xxxx.img
文件发送到电脑中进行刷入操作# 需要电脑中安装 adb 工具链, 请百度安装教程 # 按下 Win + R 快捷键, 输入 cmd 打开窗口 # 将 magisk_xxxx.img 文件重命名为 boot.img 并放在桌面(一定要放在桌面) # 连接手机并执行下面的命令 # 重启到 fastboot 模式 adb reboot fastboot # 找到桌面文件夹 cd Dasktop # 推送桌面中的 boot.img 文件到手机中并刷入 fastboot flash boot boot.img # 重启手机 fastboot reboot
注意: 安装教程比较笼统, 适合有一定玩机经验或编程经验的人操作, 刷机有风险, 操作需谨慎
如何升级 Magisk
-
首先取消对 Magisk App 的隐藏, 若没有隐藏 Magisk App 可以忽略这一步
-
更新 Magisk App (Magisk Manager)
- 点击 主页 -> App -> 更新
- 这一步可能无法下载, 所以还是需要到 Github Releases 页面下载 apk
- 安装即可
- 点击 主页 -> App -> 更新
-
更新 Magisk
- 点击 主页 -> Magisk -> 安装 -> 直接安装 -> 开始
- 重启即可
什么是 Magisk Module
- 官方解释: Modify read-only partitions by installing modules
- Magisk Module (面具模块) 是功能模块化的体现
- 面具模块可以帮我们实现许多小功能, 例如删除系统广告, 改变系统属性
什么是 Magisk Zygisk
- 官方解释: Run code in every Android applications' processes
- Zygisk 是 Magisk 提供的 zygote process 注入器
- 我们不需要了解 zygisk 是怎样运行的, 我们只需要知道它能做什么就足够了
- zygisk 实际上是一个为程序挂钩的入口, 它可以提供类似于 Xposed 的功能
如何开启 Zygisk
- 在 Magisk App 的设置菜单中即可打开此功能
- 打开此功能后需要重新启动设备以至设置生效
Magisk v24+ 已经不再提供 Hide; 现阶段的替代方案
-
自从某个版本开始, Magisk 便删除了 Magisk Hide 功能
-
面具模块的作者曾经发布推特说明: **我不想在做无趣的捉迷藏游戏, 会在之后的更新中删除 Hide (隐藏) **
-
目前阶段的替代方案有两种 (这两种方案存在冲突, 只能选择其一):
- 基于 zygisk 的排除
- 排除的意思就是不作为
- 可以理解为: 将指定的程序隔离在外, 让它无法使用 Magisk 提供的服务
- 基于 zygisk 的隐藏
- 隐藏的意思就是不会将程序隔离在外, 而是使用一些手段避免程序发现您安装了 Magisk
- 基于 zygisk 的排除
-
在 Magisk App 的设置中有这样一栏选项
-
首先看一下排除
- 打开 遵循排除列表就表示你开启了此功能
- 配置排除列表选择需要排除在外的应用程序
-
再看一下隐藏
- 需要安装一个名为 Shamiko 的模块
- 这个模块是 LSPosed 团队开发的
- 请访问 Github Releases 下载安装
- 一定要关闭 遵循排除列表 并 配置排除列表
- 没错, 还是排除列表, 但是由于 没有开启 遵循排除列表 的开关, 所以不会对此列表中的程序进行隔离在外, 而是对列表中的程序进行隐藏.
- 一定要注意的是:
- 关闭 遵循排除列表的开关
- 安装 Shamiko 模块
注意: 这两种方案都是基于 zygisk 所以必须开启 zygisk
Riru Module 已经停止维护; 迁移 Riru Module 到 Zygisk Module
Riru模块 | 替代方案 | 下载地址 |
---|---|---|
LSPosed | zygisk-LSPosed | Github Releases |
EdXPosed | zygisk-LSPosed | Github Releases |
riru-momohide | Shamiko | Github Releases |
safetynet-fix | zygisk-safetynet-fix | Github Releases |