Android 用户必备的神器,超好用的「神器」 Magisk 该怎样安装、卸载?
▍安装和卸载 Magisk
情境一:安装 Magisk 到原系统
情境二:Magisk 需要更新或者修复
在 Magisk v22 之前,每一次新版本发布都会提供 magisk.zip 与 magisk.apk 两个文件,前者代表着将被注入到系统的 Magisk 本体,后者则代表着用于管理和使用 Magisk 的应用。因此每一次打包 boot.img 镜像或是直接刷入到系统前,都需要下载一次托管于 GitHub 的 magisk.zip,十分不便。
在 Magisk v22 后,.zip 包与 .apk 包合二为一,安装的 Magisk App 本体自带了刷写功能,更新了应用本体即等于更新了即将准备注入到系统的 Magisk,不必频繁请求网络下载。
情境三:进行系统 OTA
并非每一次系统更新都会大幅改动 boot.img 或 recovery.img,也就是说,旧系统被 Magisk 打包过的镜像也极有可能顺利引导启动新系统。如果我们事先保存或者备份过旧系统中经 Magisk 修改过的镜像magisk.img,系统更新后,在 bootloader 界面下用 fastboot boot magisk.img 尝试引导启动旧镜像,若系统和 Magisk 都正常,那么就不必再费心思提取新系统的镜像,点击「安装」>「直接安装」,此时「直接安装」的对象是新系统的分区,这样我们就能顺利为新系统刷入 Magisk 。 Magisk App 能在 A/B 分区设备上保留 Magisk 进行系统更新。若 App 首页的 A/B 一栏值为「是」,我们只需要在重启安装 OTA 前点击 「安装」>「安装到未使用的槽位」选项即可。不过,经知名用户 Clyde 反映,部分在 OTA 时带有分区校验的系统,如 Pixel 的 ROM 使用此方法大概率会发生引导循环。出现相关问题还是直接一点,转用上文提到的通用刷入方式。
A/B 分区为「是」的设备:不重启 >「安装」> 「安装到未使用的槽位」> 重启以更新系统。 其他设备:重启以更新系统 > 重新安装 Magisk。
情境四:完全卸载 Magisk
▍授予应用 Root 权限
不少应用索取 root 其实只是为了获得系统底层的部分权限,这部分授权其实无需 root,我们大可以用 adb 输入一次命令授予,比如我们之前聊过的 Buoy,或是 Gsam Battery Monitor 等电池监控类应用。
Root 被认为是一种低效、慢速的处理方式,Shizuku 应运而生。它可以被当作 root 权限与需要 root 权限的应用之间的「中间商」,通过 root/adb 提升权限后,再为那些需要使用系统 API 与 adb 权限的应用授权,这比 root 权限更高效。如果你在使用「小黑屋」、「冰箱」、「App Ops」等应用,建议先安装 Shizuku 后再通过它来为这些应用授权。
▍通过 MagiskHide 隐藏 Magisk
提供版权和地区限制内容的应用:如 Google Play 检测到 root 后,设备会变成「未认证」状态,我们将无法搜索到 Netflix 等流媒体应用。
支付应用:如云闪付,该应用在检测到 root 后会弹出警告,并直接隐藏指纹支付选项。
通讯应用:如 ZohoMail,它会在检测到 root 后提示用户登出。
游戏:部分游戏有严格的反作弊机制,检测到 root 后可能拒绝用户游玩。
▍获取和管理模块
安装模块的基本流程
模块翻车后的自救
如果还能访问 Magisk App,在模块界面中,「移除」出问题的模块,然后重启以完全卸载此模块。 如果已经无法打开 Magisk App,但能使用 adb,用数据线连接电脑,输入 adb wait-for-device shell magisk --remove-modules,这会删除所有模块并重启。 如果连 adb 都不能访问,那么请尝试进入安全模式。不同机型安全模式启用方式不同:开机状态下,比较常见的启用方式是按住电源键呼出的重启按钮;关机状态下,一般能通过特定的实体按键激活。进入安全模式后,Magisk 会自动禁用所有模块。再重启一次,模块禁用的状态会被保留,设备应当能恢复正常。
如果装有第三方 Recovery,利用 Recovey 的文件管理功能(高级 > 文件管理),定位到/data/adb/modules,将其中的问题模块重命名为「remove」,Magisk 会在重启时自动卸载该模块。更简单粗暴的方式是直接删除该目录下问题模块文件。
装有第三方 Recovey 时,我们还能将 Magisk.apk 重命名为uninstall.zip ,在 Recovery 下刷入,这可以完全卸载 Magisk,潇洒弃坑走人。
本文由多位作者联合撰写