如何给 Pixel 7 解锁、root、无损升级
后知后觉 暂无评论

随着国内手机厂商对于手机权限的逐步收紧,获取根权限变的愈发困难,就连一直以“发烧”著称的小米在澎湃 OS 后也宣布收紧解锁策略,需要在小米论坛五级以上的用户回答一堆问题后才能申请,属实是有点过了。

国际大厂的手机,三星、索尼等也是类似,新款的解锁方式需要等待很久,甚至根本就没办法解锁使用,部分低劣的厂商甚至有熔断机制,解锁后无法完美复原,影响保修策略。

像素

既然如此,那么谷歌亲儿子 Pixel 自然成为了玩机首选,官方提供解锁方式,并且有大量的开发者为其提供技术支持,唯一的缺憾是在国内使用,因为种种原因,不是很方便。

正好手中有台谷歌七代像素,来演示一遍如何进行解锁、授权、升级。

环境准备

首先在电脑安装 adb (Android Debug Bridge) 工具,Mac 电脑直接解压至任意目录,然后添加环境变量即可,因为博主的电脑已经安装了 Android Studio 套件,因此 adb 工具已经安装在 /Users/name/Library/Android/sdk/platform-tools 目录中,只需要手动配置环境变量即可,如果使用了 Oh my zsh,那么只需要创建自定义配置即可:

vim ~/.oh-my-zsh/custom/android-sdk.zsh
## 写入以下内容
# Android SDK Path
export ANDROID_HOME=/Users/$USER/Library/Android/sdk
export PATH=$ANDROID_HOME/platform-tools:$PATH

然后重启终端后输入命令 adb version 可以看到版本信息即为成功。

Android Debug Bridge version 1.0.41
Version 34.0.5-10900879
Installed as /Users/kane/Library/Android/sdk/platform-tools/adb
Running on Darwin 23.1.0 (x86_64)

Windows 环境操作相同,将下载的包解压到任意目录下,然后添加环境变量即可。

## 在下方“系统变量(S)”中新建一个值,指向 ADB 文件夹所在目录
ADB=C:\Users\kane\platform-tools
## 然后在 “Path” 中添加一行新值
%ADB%

解锁

进入 bootloader 后执行命令即可进行解锁

fastboot flashing unlock

解锁完毕后即可进行获取根权限的操作,如果不需要的话可以跳过此步骤。

根权限

想获取 Root 权限,需要两个工具,一个是官方的线刷包,还有就是 Magisk 面具,也可以直接使用金丝雀版

首先在谷歌开发者官网下载最新的线刷包,按图示操作:

下载镜像(!AVIF)

解压后结构大致如下:

bootloader-panther-cloudripper-14.0-10529422.img  ## 引导镜像
flash-all.bat                                     ## Windows 刷机脚本
flash-all.sh                                      ## Linux/Unix 刷机脚本
flash-base.sh                                     ## Linux/Unix 基础刷机脚本
image-panther-up1a.231105.003.a1.zip              ## 系统固件(压缩)
radio-panther-g5300q-230626-230904-b-10758613.img ## 基带固件

然后解压上述的系统固件压缩包,取得其中的 init_boot.img 并传输至手机存储中,然后将刚才下载的 Magisk 安装至手机中,打开 Magisk 软件,在上方的 Magisk 模块中选择 Install,然后选择 Select and Patch a File,选择刚才导入的 init_boot.img,给系统镜像打补丁,然后在 Download 目录中会生成一个补丁后的镜像文件,名为 magisk_patched-26400_wNRH7.img 的文件,其中 26400 为 Magisk 版本号,后面的 wNRH7 为产生的随机序号,实际的文件名以结果为准,不再赘述。

将这个补丁后的镜像传输回电脑即完成了获取根权限的全部准备工作,使用数据线连接电脑和手机,在手机设置中开启 USB 调试功能。

## 手机重启至 bootloader 模式
adb reboot bootloader
## 刷入补丁后的镜像(镜像名改为实际生成的文件名)
fastboot flash init_boot magisk_patched-26400_wNRH7.img
小贴士:需要注意的是,在 bootloader 模式下刷机,需要安装 USB 驱动,可在官网 Get the Google USB Driver 下载。在驱动管理器中右键未知设备手动安装驱动即可。

升级系统

正常情况下,手机没有获取 Root 权限时是可以在手机中 OTA 进行升级系统的,但获取权限后便无法正常检测到更新,因此需要手动更新系统,或者在手机系统损坏的情况下,也可以使用此方法进行修复。

如出一辙,下载上述的线刷包,如果手机中的数据仍然需要,那么需要修改刷机脚本,Windows 系统修改 .bat 文件,Unix/Linux 修改 .sh 文件。

以 Linux/macOS 为例,编辑脚本 flash-all.sh,将最后一行按下述修改:

## 原命令
fastboot -w update image-panther-up1a.23xxxx.00x.a1.zip
## 修改后的命令
fastboot --skip-reboot update image-panther-up1a.23xxxx.00x.a1.zip
### 注:-w 参数表示 wipe,刷机的同时会清空手机中的数据(恢复出厂设置),--skip-reboot 参数表示刷机成功后不重启,方便继续刷入用于获取权限的补丁镜像用
在 Pixel 7 之前的版本是可以保留 Root 权限同时进行 OTA 升级系统的,但是在本代中无法成功,只能通过线刷更新系统和安全补丁。

附录

参考链接

本文撰写于一年前,如出现图片失效或有任何问题,请在下方留言。博主看到后将及时修正,谢谢!
禁用 / 当前已拒绝评论,仅可查看「历史评论」。