# 1.adb和fastboot

在刷机的过程中需要使用adb 和 fastboot命令来连接手机,并对手机下发相关指令。刷机前确保自己电脑上已有adb和fastboot。

# 1.1 platform-tools

下载platform-tools(压缩包)内部包含adb 和 fastboot。

下载地址 https://developer.android.google.cn

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767081972712-d55ee19c-4757-4183-83ec-0d1fc0462252.png" alt="img" style="zoom:50%;" />

# 1.2 解压

platform-tools是一个压缩包,解压后就是一个普通的文件夹(内部包含adb、fastboot)。

将解压后的文件夹拷贝到指定目录(当做安装目录),不要有中文路径。

img

# 1.3 环境变量

img

在主机的cmd中可以执行:

img

# 1.4 测试adb和fastboot

win系统:adb --version
fastboot --version

img

# 1.5 谷歌USB驱动

1.5.1 下载

https://developer.android.google.cn

单独下驱动程序压缩文件已经不行了

img

通过 Android SDK 管理器获取该驱动程序,具体操作步骤如下:

  1. 在 Android Studio 中,依次点击 Tools > SDK Manager

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767088432208-630b626a-8153-4c14-bcb5-297d7ef9fdb0.png" alt="img" style="zoom:50%;" />

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767088478653-367372fe-78ea-4a83-882a-387bb6cfab7d.png" alt="img" style="zoom:50%;" />

设置SDK位置

img

  1. 点击 SDK Tools 标签页。

选中 Google USB Driver,然后点击 OK

安装软件包。完成后,驱动程序文件便会下载到 **android_sdk**\extras\google\usb_driver\ 目录中。

# 1.6 连接手机

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767085100508-d5dbf982-33a1-40f2-a233-3701955e4ecd.png" alt="img" style="zoom:33%;" /><img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/1767085252191-0a230e2e-e2d1-4fc5-9fa4-34d1c2d78fa4.png" alt="img" style="zoom:33%;" /><img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767085021242-e7af221d-c3e0-4211-95cf-c69f9207e797.png" alt="img" style="zoom:33%;" /><img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/1767085350848-532fdfaa-b4df-4297-820f-76511ef08fde.png" alt="img" style="zoom:33%;" />

开启手机的USB调试,然后:

  • 用数据线连(官方线)接手机和电脑,会提示是否授权窗口,点击授权。
  • 尽量使用官方自带的数据线,不要用自己网上几块钱买的。

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767085685470-f7db6bdd-e918-4d01-a4a4-81ea4280a625.png" alt="img" style="zoom:33%;" /><img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767085706098-8c66331f-8839-4f77-b4dc-9906eac65c92.png" alt="img" style="zoom:33%;" />

  • 打开终端输入 adb devices查看是否连接:
  • win和mac系统:adb devices

img

需要在手机里授权

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767085934657-60f72a88-c395-4bac-80e8-052613909815.png" alt="img" style="zoom:33%;" />

下面的情况需要安装谷歌usb驱动:

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767086083127-3a6f5a2f-6f7e-4222-8d95-4c7701cf33a0.png" alt="img" style="zoom:33%;" />

电脑命令行,输入指令“adb devices -l”,查看输出结果,就可以看到设备是否连接成功

adb devices -l

img

作为“adb devices -l”的响应,adb 会针对每个设备输出以下状态信息:

序列号:adb 会创建一个字符串,用于通过端口号唯一标识设备。下面是一个序列号示例:emulator-5554

状态:设备的连接状态可以是以下几项之一:

offline:设备未连接到 adb 或没有响应。

device:设备已连接到 adb服务器。请注意,此状态并不表示 Android 系统已完全启动并可正常运行,因为在设备连接到 adb时系统仍在启动。系统完成启动后,设备通常处于此运行状态。

no device:未连接任何设备。

说明:如果加入 -l 选项,devices命令会告知设备是什么。当连接了多个设备时,此信息可以方便区分这些设备。

再次命令,看到一个设备号,即代表成功

adb devices

img

shell交互

adb shell

img

# 1.6 谷歌出厂映像

上面可知设备名是tokay,对应pixel9,漏洞复现在Android15版本,欧版的

img

点击flash【Android Flash Tool】,旁边的link已经失效了

【根据官方教程:】

Android 刷写工具是一款基于网络的工具,可让您将预构建 Android build 刷写到设备上,以用于开发和测试。

运行 Android 刷写工具,必须满足以下要求:

# 1.6.1 启用 USB 连接

在设备上运行 Android 之前,必须先启用 USB 连接:

  1. 将您的设备连接到工作站上的 USB 端口。

# 1.6.2 刷写设备

  1. 如果您在计算机上运行 Android 调试桥 (adb),请先停止 adb 服务,然后再继续操作,以免该服务干扰刷写过程。如要停止 adb,请运行以下命令:
adb kill-server
  1. 在开发工作站上的浏览器中,打开 flash.android.com。系统会显示欢迎页面,点击开始

img

img

需要注意右上角的拦截:img

  1. 点击允许 ADB 访问,以允许该工具通过 adb 与您的测试设备通信。

img

  1. 点击添加新设备

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767099190732-1d2d8720-7395-4220-a589-6d3e7e10eae1.png" alt="img" style="zoom:50%;" />

  1. 从列表中选择您的设备,然后点击连接。此列表不一定包含完整的设备名称。

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767099215108-e6bce9b9-83ed-4187-9145-67ebb01d402c.png" alt="img" style="zoom:50%;" />

  1. 在设备屏幕上,选择一律允许使用这台计算机进行调试,然后点击确定,接受 USB 调试连接。

这一步可能显示被占用,还需要关闭Android Studio和IDEA

img

  1. 手机上选择允许访问,然后在浏览器中选择已连接的设备。

img

  1. 从列表中搜索并选择所需的 build。您还可以选择擦除设备或强制刷写所有分区等选项。

点更多发布版本,然后选择安卓15

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767099500482-a7ec94c8-d8d9-4fa6-92ba-f4d478a9c97f.png" alt="img" style="zoom: 50%;" />img

选择欧版的

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767099590676-480a988c-7314-4670-9982-1fec6807ee9f.png" alt="img" style="zoom:50%;" />

编号和前面的选的是同一个

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767099702388-0a7dceb2-eb29-4423-b8e0-e17dc62b0a51.png" alt="img" style="zoom:50%;" />

  1. 如要开始刷写,请点击 Install。设备会重新启动并进入 Fastboot 模式 (Fastboot mode)。
  2. 出现 Flash Complete 后,从设备上拔下 USB 线。

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767102313990-3c8b0ba6-a01c-4fd5-ac44-e1c5e532a133.png" alt="img" style="zoom:50%;" />

<img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/1767102709080-91ca0766-2233-4781-9f11-58981b7c7c85.png" alt="img" style="zoom:33%;" />

# 2.获取root权限(使用 Magisk)

Root 的核心思路是:修补系统的引导镜像 (boot.img),然后刷入这个被修改过的镜像。

# 2.1安装Magisk App:

image-20260117211834638

  • 在下载的目录下执行命令,安装到手机:adb install Magisk-v30.6.apk

image-20260117212234054

可以在手机上看到有该软件(Magisk)

<img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/Screenshot_20250329-091544[2].png" alt="img" style="zoom:33%;" />

# 2.2获取出厂映像

<img src="https://cdn.nlark.com/yuque/0/2025/png/35603403/1767102709080-91ca0766-2233-4781-9f11-58981b7c7c85.png" alt="img" style="zoom:33%;" />

看见build号是BP1A.250505.005.A1

在谷歌官网https://developers.google.com/android/images?hl=zh-cn,找到完全相同的映像,下载:

image-20260118173511832

下载后得到:

<img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/image-20260119160849905.png" alt="image-20260119160849905" style="zoom:67%;" />

全部解压,解压后打开看到里面还有一个image压缩包,继续解压这个压缩包

image-20260119161208022

# 2.3刷机

解压后在里面找到init_boot.img

pixel 7系列 及其以上的使用init_boot.img文件。

image-20260119161511392

将这个init_boot.img传给pixel9中,上传后启动Magisk

<img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/Screenshot_20250331-041141[1].png" alt="img" style="zoom: 25%;" />

点击右上方的安装,点击选择并修补文件

<img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/Screenshot_20250331-041751[1].png" alt="img" style="zoom:25%;" />

然后找到刚刚的传过去的init_boot.img

<img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/Screenshot_20250331-041925[1].png" alt="img" style="zoom:25%;" />

选择这个文件,点击开始,然后就完成了【利用Magisk解包该文件,修补其中所需要的二进制文件,然后将其重新打包成一个新文件】

<img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/Screenshot_20250331-042130[2].png" alt="img" style="zoom:25%;" />

将新修复产生的magisk_pached文件

1.首先通过adb shell将其这个magisk_patched-30600_fHPB0.img复制到我们电脑能直接访问的路径下/storage/emulated/0/Android【不然电脑看不到这个镜像文件】

 cd ~/storage/emulated/0/Download/
 
 cp magisk_patched-30600_fHPBO.img ~/storage/emulated/0/Android

image-20260119170207250

然后复制到电脑和adb以及fast_bootg工具相同的文件夹中:

<img src="https://blog-vvwwvv.oss-cn-hangzhou.aliyuncs.com/img/image-20260119170911500.png" alt="image-20260119170911500" style="zoom:50%;" />

凑齐手机到快速启动模式,点击重启,然后按住音量减小键,会进入Fastboot Mode

然后启动终端【需要保证连接了pixel9手机】,执行命令,确保电脑和手机连接

fastboot devices

下面的就是连接成功(左边为序列号)

image-20260119171711716

成功后输入命令:

fastboot flash init_boot mag

剩下的按tab键可补全,然后按回车,Fastboot会将该修复文件发送到分区,当第一个发送返回OKAY后,将该修复文件写入该分区,然后再次受到OKAY

image-20260119172343310

确保手机在启动选项的页面,然后按一下电源键重启设备,然后等一会就自动开机了

再次启动Magisk应用,【有时会提示需要进行额外操作,点确定即可,我这里没有】,然后上面显示已安装就表明root成功【我这里当时保存了两个修复img,所以可能有问题】

执行命令进入root用户,第一次使用手机上会显示,授予权限即可:

adb shell
su root

image-20260119173653580

至此就刷root结束了