写在最前面:

  1. 手机和电脑最好全程都用数据线连接着
  2. 以下刷机方法理论来说适用于许多品牌手机的刷机场景(当然,一加可以使用一加工具箱,更为便捷)
  3. 部分配图采用第3个引用中的B站视频截图(因为刷机界面不好截图)

基础知识

1、什么是fastboot

Fastboot,英语翻译意思是快速启动。在安卓手机中fastboot是一种比recovery更底层的刷机模式(俗称引导模式)。就是使用USB数据线连接手机的一种刷机模式。相对于某些系统(如iOS)卡刷来说,线刷更可靠,安全。

——来源:百度百科

2、什么是recovery

Recovery是Android手机备份功能,指的是一种可以对安卓手机内部的数据或系统进行修改的模式(类似于windows PE或DOS)。在这个模式下可以,对已有的系统进行备份或升级,也可以在此恢复出厂设置。

——来源:百度百科

3、什么是blootloader

系统在启动之前需要通过bootloader启动,手机启动的时候基带执行初始化,然后引导系统内核,直到系统启动。智能手机生产厂商通常在出厂时锁定了手机的bootloader,以防止用户误操作损坏了系统文件造成手机功能异常,部分厂商会给开发者或普通用户发放bootloader解锁码,这通常需要步骤众多的申请,锁定bootloader能部分有效阻止恶意程序对手机造成的破坏,部分用户或开发者会通过解锁bootloader以获得更多的功能和权限,这通常会带来使用风险。

——来源:维基百科

4、什么是root

Root是Android系统的一个术语,它使得用户可以获取Android操作系统的超级用户权限。Root能够帮助用户越过手机制造商的限制,得以卸载本身预装的程序,或运行需要系统权限的动作。Android系统的Root与苹果iOS系统的越狱类似。

——来源:维基百科)

5、Magisk、Xposed、太极的区别

Magisk另辟蹊径因其’Systemless’的修改方法而收获广大用户,在此开发者台湾大佬John Wu致敬。原理简单的说就是在系统boot时将其img挂载到自己的分区下,构建一个虚拟文件系统,和system分区没有半毛钱关系,magisk的优势也就很明显了,以不修改系统文件为前提,从而达到修改系统文件的效果。通过这种方式绕过Google SafetyNet,系统OTA升级,部分”被禁”软件都可以正常使用[1][2]

Xposed相反,框架一旦被下载就会修改系统,改动会影响在SafetyNet保护下的APP,所以一些理财软件,Pokemon Go…可能无法使用,这些应用对root权限很敏感,这使得Xposed在这方面的发挥受到一些限制[1]

太极是一个 类 Xposed 框架,但是它本身与 Xposed 没有任何关系。唯一有点关系的可能是太极能够兼容 Xposed 模块,除此之外,二者从设计思路、实现机制到运作逻辑完全不同[3]

6、太极阴和太极阳的区别:

普通版的太极无法作用于系统 APP,并且创建 APP 需要先卸载。太极·Magisk 借助一个 magisk 模块注入系统,从而可以作用所有的 APP;可以实现 Xposed 框架的完整功能。[3]

7、为什么要安装模块?——可以在通过模块来增强任意 App 的功能,典型的使用场景如下:

防止消息撤回,自动抢红包等。 App 主题美化。 系统功能增强,如后台管制,通知栏美化,UI 美化。 模拟定位等。 隐藏或者更换设备信息。 聊天消息加密,特定联系人隐藏。[3]

8、手机变砖可以采用线刷来使手机恢复正常

卡刷与线刷(仅适用于Android系统机型) 卡刷与线刷及刷机等一词出自小米MIUI论坛 利用手机刷入固件(卡刷) 手机进入recovery模式单纯写入固件的压缩包来更新系统固件;或是将压缩包放入手机内的存储空间直接进行OTA更新。 利用电脑与手机连线刷入固件(线刷) 当上述方法出现问题的时候,可以用手机连接计算机,使用Android调试桥接器(ADB)直接将固件、系统底层、驱动程序等等写入手机,如fastboot模式;或是使用其它的软件工具包刷入,如高通9008等等。 风险 刷机时,需要注意各种问题,如内核版本。也要注意手机有相同名称、相同型号但是不同型号的(例如LG G2即有D802(国际版)、F320S/K/L(韩国版)、L22(日版)等。各个版本,所适用的ROM也大不相同,如果刷入错误的ROM,则手机会变成“软砖”,再严重的话则是“硬砖”。另外刷入ROM后建议清除Dalvik虚拟机及缓存数据,尝试前必须要做好适当准备,并且事先为手机资料进行备份、准备原厂ROM,以备不时之需。

——来源:维基百科

流程概括

通过命令行或一加工具箱(注:以下将分别介绍两种方法的实施步骤)解锁Bootloader->采用第三方recovery刷入Magisk或使用工具箱来获得Root权限(注:一加工具箱的实现原理其实是相同的,只是自动帮你完成了一些步骤)->更新Magisk并下载一加全能工具箱->在工具箱中完善相关设置->开始安装各种Magisk模块

目的

获取ROOT权限、安装Magisk或Xposed模块
嫌麻烦的可以使用太极阴,可以免Root使用一些模块。但太极阳则依然需要Root和Magisk

准备工具

大部分链接为官网,部分采用天翼网盘分享 这里也提供一份包含所有提到软件的天翼网盘链接:https://cloud.189.cn/t/jU3umm3Q3MVz(访问码:ylq0) 提供官网链接是为了便于日后有某个工具更新时你可以及时的去对应网站下载

1、电脑端:大侠阿木一加全能工具箱TWRP(这是一加7T的TWRP,其它手机的TWRP也可以在这个网站找到)、Adb and FastbootMagisk (Manager)(访问码为”bst0”,即面具补丁,里面存储着一些刷入脚本和面具运行文件,当前最新版为20.4(20400))、一加7T全量包系统(这个非必须,如果要刷入其它ROM的请自行去各个网站下载。但是后续如果想重新上锁BL,记得先安装这个全量包,并且建议下载稳定版的)
2、手机端:一加全能盒子、(Magisk)Manager(一加全能工具箱会自动安装)

详细步骤

1 安装ADB

运行Adb and Fastboot应用程序,然后在命令行中输入adb,出现相关提示即可[4][5]
image.png

2 解锁BL

在手机的【开发者选项】中打开【USB调试】和【OEM解锁】、【高级重启】

开发者选项打开方式为狂点关于手机中的版本号五下 ^_^

安装驱动程序,就是插入手机时出现的【CD驱动器】

这一步也可以使用【一加全能工具箱】来完成

image.png

在电脑上的【设备管理器】(控制面板->硬件和声音->设备和打印机->设备管理器)中查看是否有相关设备
image.png
接下来解锁BL和ROOT将分两种方法介绍

使用【一加全能工具箱】
输入【2】,一键解锁bootloader

我这里使用的时候这个一直提示【正在等待fastboot连接】,所以我还是采用的后文中的手动解锁方式

image.png
完成提示操作后输入随机码
image.png
随后等待其自动解锁BootLoader,若未成功请参考下面的方法

使用第三方Recovery

接前文,安装adb后输入adb devices查看设备信息(请用数据线连接电脑)
image.png
输入adb reboot bootloader命令进入fastboot模式
image.png
输入fastboot oem unlock来解锁手机
image.png
通过音量键选择UNLOCK THE BOOTLOADER,通过电源键确定
image.png
等待一段时间
image.png
进入后在设备信息中查看【版本号】,点击五次后解锁开发者模式

之后进入开发者模式中开启【高级重启】

重启进入fastboot模式后,可以看到此时的DEVICE STATE状态已经由先前的locked变成了unlocked,则说明BL已经解锁成功

3 ROOT

使用【一加全能工具箱】

输入3
image.png
两分钟左右后手机自动重启(经测试,如果此时重启失败可以用长按【音量上】+【电源键】来启动)
image.png
之后下载【一加全能盒子】即可
image.png

使用第三方Recovery
开始刷入第三方recovery-twrp[8],在命令行中输入
fastboot flash recovery D:\SoftWare\OnePlusRoot\twrp-3.4.0-2-hotdog-unified-mauronofrio

之后选择Recovery Mode
image.png
使用该文件启动手机,在命令行中输入
fastboot boot D:\SoftWare\OnePlusRoot\twrp-3.4.0-2-hotdog-unified-mauronofrio
image.png
成功进入该界面
image.png
划过
image.png
命令行输入
adb push D:\SoftWare\OnePlusRoot\Magisk-20.4(20400).zip /sdcard/
将下载好的magisk.zip包发送到手机(就是准备工具中电脑端的:Magisk (Manager)(访问码为”bst0”,当前最新版为20.4(20400)))
image.png

点击【install】,然后找到后缀为zip的刷机包

选择好后划过滑块
image.png
安装好后重启即可

4 安装Xposed模块

  • 安卓6.0以下:去酷安下载xposed installer安装或者打开magisk的模块,搜索xposed,刷入xposed模块
  • 安卓版本7.0以上:酷安搜edxposed,在magisk搜索riru先刷riru-core再刷riru-edxposed

    常见问题

    1、刷入Magisk后无法正常重启(卡在开机界面):【音量上】+【电源键】
    2、twrp相关问题:Unable to Mount Storage(注:未测试)
    3、注意:Blockloader解锁后,就算更新系统取消掉了Root权限,也同样不会改变Blockloader的状态,需要用一加全能盒子重新上锁,但会有一定的风险

    注:上锁BL前记得先备份数据,并且保证当前是官方系统未进行任何改动(包括Root和Recovery都没刷过) 如果不满足上面的条件就先刷一遍全量包,再使用本功能 ——来自一加全能工具箱在上锁BL时的提示

7、模块刷砖了?
进入TWRP的Advanced界面,进入文件管理->adb->modules,找到对应模块后删掉

8、用xposed installer刷砖了
双清

9、安装太极的步骤可以参照官方文档[3]和相关视频[10]

结果

最后成功了解并实践了整个刷机流程,但最后还是取消了ROOT权限并上锁了BL,主要有以下四个原因:

  1. ROOT权限很大,不当使用可能会有风险。
  2. Magisk或Xposed的模块之间会有冲突,可能导致手机变砖。
  3. 解除BL锁之后,将无法正常重启手机,只能通过【音量上】+【电源键】来解决。(可能只有少部分人遇到我这种情况,但仍然很影响体验)
  4. 需要在一加全能盒子中隐藏系统版本,来达到增量更新系统的效果,但如果忘了这一点,比如这次选择更新稳定版,下一次更新公测版则可能导致手机出现问题。

虽然花了两天的时间,但能学习到刷机的知识也还是很不错的,以后有这个需求的时候也不用去找别人了嘛~

这篇文章既作为笔记,也作为一篇简易的刷机教程吧,希望也能帮到一些人^_^

参考

  1. 关于Xposed和Magisk的各方面比较
  2. 神奇的 Magisk——简书
  3. 太极帮助文档
  4. 解锁手机,迈向自由之路。刷机笔记——一加社区
  5. 秋之盒
  6. 一加7Pro玩机系列1- 如何解锁安装TWRP和用Magisk获取Root——B站
  7. magisk零基础最详细刷入指南!酷安同步教程!绝对学会!
  8. 解锁手机,迈向自由之路。刷机笔记 -一加社区
  9. Magisk面具安装教程XPosed框架安装教程
  10. 零基础刷magisk与xposed!b站视频同步教程!-酷安
  11. 【神级App】超详细的太极框架的使用教程!