Android 刷机入门教程

前言

好久没玩刷机了,刚好最近捡了个旧手机玩一玩,想起当年刷机的经历还是蛮有意思的,没想到这么多年过去了还是没变,第三方 Rec 还是用的 TWRP, root 方案还是用的 Magisk 等等。本次刷机采用的是 小米 CC9 Pro,虽然机型比较旧,但由于是小米,刷机门槛不高。

不过在刷机前,还是要有几点注意事项要说明:

  • 请在备用机上进行刷机
  • 若有重要资料请提前备份,刷机过程将进行双清(清除 Data 和 Cache 分区)
  • 刷机后,尽管不获取 root 权限,手机也无法获取完整的来自于 OEM 的保护
  • 手机的保修将失效

接下来是准备工作:

硬件需求:

  • 一台电脑
  • 需要刷机的手机
  • 数据线

软件需求:

如果你是刷机老玩家,可能一部手机足矣,但为了照顾小白,保证整体过程顺利,故选择最稳妥的刷机方案。

接下来开始正式的刷机过程。

解锁 BootLoader

根据 小米社区 的规则,基于 MIUI 的新机器在购买绑定账号后需要耐心等待为期 3 天 的冷静期,确保用户不会拿到手机后就立刻放弃保修,当 3 天过去后,就可以解锁啦。而对于基于 HyperOS 的设备则需要去小米社区申请。

下载并解压该MIUI 官方解锁工具后,启动文件夹内的 miflash_unlock。此时会跳转小米账号登陆,登陆成功后请务必阅读免责声明后选择是否同意,同意后按照屏幕指引将手机进入到 BootLoader 页面,具体操作方法为手机关机状态下按电源键+音量减。这时可能由于某些原因解锁按钮还是灰色的,是由于驱动未安装所致,操作方法为点击右上角齿轮标志并选择驱动检测,按提示重新连接手机后,解锁按钮就正常显示了。

刷第三方 Recovery

当我们解锁手机后,手机需要较长的时间来重启。这时我们可以配置一下ADB 调试工具

# \path\to\file 为你下载好的 ADB 调试工具的路径
> cd \path\to\file\

# 检查是否安装成功
> adb --version
Android Debug Bridge version 1.0.41
Version 34.0.5-10900879
Installed as C:\Users\15025\AppData\Local\Android\Sdk\platform-tools\adb.exe
Running on Windows 10.0.22631

手机重启后,进入到手机设置,点击 MIUI 版本 10次,进入开发者模式(不同系统请自行查询),向下翻动,将 USB 调试 选项打开,同意连接后检查设备是否连接成功:

# 845d51c 为我的设备 ID,每一个人都不一样
> adb devices
List of devices attached
845d51c device

接下来,按如下步骤刷写 Recovery:

  1. 重启至BootLoader:
    > adb reboot bootloader
  2. TWRP Recovery下载对应型号的镜像文件,并按如下指令刷写:
    # twrp.img 替换成下载好的镜像文件的位置,尽量用绝对路径,否则大概率 error
    > fastboot flash recovery twrp.img
    Sending 'recovery' (131072 KB) OKAY [ 3.062s]
    Writing 'recovery' OKAY [ 0.665s]
    Finished. Total time: 3.745s

    # 重启系统
    > fastboot reboot
    在重启系统后,许多设备都会在引导原系统时将 Recovery 自动刷回默认,故请在第一次重启就长按 音量上 + 电源键,首次进入TWRP Recovery会比较缓慢,大概5秒后松手防止触发长按电源键强制重启。

当我们成功显示 TeamWin 的 Logo时,证明 TWRP Recovery 安装成功,这时会发现页面为纯英文,选择右下角的 Select Language 更改语言为 Chinese(Simplified) (简体中文)并点击 OK。

按照提示,我们滑动滑块允许修改。

通过 sideload 刷写合适的 ROM

因为系统会默认加密内部存储器,故我们需要进行格式化:

  1. 点击清除
  2. 格式化 Data 分区
  3. 输入 yes

此时电脑的内部存储器将变为不可读写的状态(即便打开了MTP模式),所以我们需要通过 ADB Sideload 将刷机包刷入手机。

这时我们就可以挑选心仪的系统了,参考 Bilibili 文章自选刷机包,由于第三方刷机包多为开源社区卡发与维护,所以很有可能有作者停更的情况。同时需要注意的是手机的型号和代号,确保自己选择了正确的刷机包,否则手机将无法正常启动。

当选择完毕,我们就可以开始 Sideload 刷机了:

  1. 手机 TWRP 选择 高级–>ADB Sideload,并勾选所有选项,滑动下方滑块
  2. 通过 ADB 进行刷机
    # 检查设备状态,注意设备 ID 后变成了 sideload
    > adb devices
    List of devices attached
    845d51c sideload

    # 刷写系统, \path\to\file.zip 为下载好的刷机包的路径,并等待刷完
    > adb sideload \path\to\file.zip
  3. 手机 Recovery 返回主菜单,选择清除,选择格式化 Data 分区,同上
  4. 重启

正常情况下,系统就成功刷成了你选择的系统,若中途出现问题,请确保刷机包和手机型号一一对应,确保刷机途中数据线正常工作。接下来重启并享受你的新系统吧。

通过 内部存储 刷写合适的 ROM

部分手机不会加密存储器(很少),且第三方 ROM 很多也不会加密存储器,故我们就可以通过内部存储的方式直接刷机,方法如下:

  1. 通过 MTP 将刷机包传入手机或直接通过手机下载刷机包,并进入 TWRP Recovery
  2. 点击安装并选择刷机包
  3. 滑动滑块开始刷机
  4. 按照上述方法清除 Data 和 Cache分区

TroubleShooting

  1. 请一定不要忘记双清(清除 Data 和 Cache 分区)!
  2. TWRP 中还有很多好用的工具,并且集成常用的 Linux 指令,切勿乱点造成不可逆的影响
  3. 若刷机造成系统不可进可通过fastboot重刷recovery再重刷原版系统(你的手机系统的官网)的方式恢复为默认系统,请不必惊慌
  4. 一定记得将重要数据备份,不要在主力机上尝试,否则可能一天都用不了手机

结语

当学会了刷系统后,那么刷面具,刷xp框架,刷GApps也都是同样的道理了,感兴趣的话可以自行前往酷安翻贴学习更高级的玩法。但请记得,这时候的这部手机就不要放任何重要数据了,会有被窃风险。