一个比较残忍的现实是:因为近几年 Google 越来越喜欢将平台特性打包进 Google 服务进行分发,在没有 Google 服务或没有完整 Google 服务的 Android 设备上,想要体验 照片选择器 、 快速分享 等特性,感受完整、纯粹的 Android 体验,通过诸如亚马逊海外淘这样的渠道获取一台 Google Pixel 设备是为数不多的选择之一。
种草预警:
- 升级也要图个明白:8000 字详解 Android 13 正式版的 9 个新变化
- 大船靠岸,激动暂缓:以 Pixel 为例谈二手/水货 Android 手机验机
- 挑台二手机,体验原生味:银河系 Google Pixel 漫游指南
- 一派 | 你为什么选择 Google Pixel?
但当你最终入手一台 Google Pixel,就还得面对另一个比较残忍的现实:即便你拥有基础的网络条件,Google 有意或无意(大多数时候是前者)间也屏蔽了很多大陆地区用户可以访问的功能,比如此前我们已经介绍过的、为 Pixel 5/6 等机型开启国内 5G 网络的方法。
考虑到「原汁原味的 Android」这件事的选择越来越少、慕名下单 Pixel 系列的新用户(相对)则越来越多,这篇文章中我们借近期 Pixel 8 系列免 root 解锁 VoLTE、5G 网络的新方案,分享一下 Google Pixel 系列机型的上手指南。
再聊解锁与 root
尽管都是为了感受最原汁原味的 Android,国内 Pixel 用户对使用体验的期望依然各有不同:看重 OTA 体验,希望尽可能减少玩机操作甚至 root 的影响,一般会选择仅解锁 Bootloader;喜欢完全掌控设备,享受 Magisk 模组带来的便利与实用性的朋友,解锁 Bootloader 之外则一定会选择 root。
无论你是哪种 Pixel 用户,我都建议在可能的情况下对 Bootloader 进行解锁。虽然理论上安全性会有所降低,但解锁状态的 Bootloader 另一方面也是各种翻车情况下进行恢复的急救通道(通过刷写工厂镜像)。
至于解锁流程就是老生常谈了,如果你对 Pixel 近几代机型不太熟悉,需要注意的地方是 Pixel 7 这样的新机型解锁 Bootloader 对应的命令是:
fastboot flashing unlock
而非此前的
fastboot oem unlock
。
需要注意的是,解锁操作会清除当前设备上的所有内容(相当于进行一次恢复出厂设置),操作前请进行数据备份!
解锁完成后我们就可以通过手动刷入镜像的方式来升级到最新版本系统了(自动 OTA 视设备已安装系统情况则可能需要多次)。
更新系统
下载最新的、适用于本机型的、完整的镜像文件 。
这三个条件请注意检查,任何一个错了都会导致「翻车」。更重要的是,请保证访问 这个页面 时页面语言为英文。中文页面存在更新不及时的问题。
下载后解压,然后将手机重启至 bootloader 并连接电脑。在 Mac 上,刷机用到的脚本是 flash-all.sh,而在 Windows 上是 flash-all.bat。
如果你尚未配置手机,手机里没什么要保留的数据 ,那么直接运行脚本刷入即可,刷完手机会自动开机,开机后你可以跳转至下一小节「进行 root」继续操作。
如果你已经配置了手机,手机里有数据需要保留 (比如每个月的安全更新发布了,你重新下载了最新版系统的完整工厂镜像),那么在获取并解压工厂镜像后,我们需要打开脚本文件进行编辑。
具体而言:
-
打开脚本后,你能在最后一行看到类似
fastboot -w update image-xxxxxx.zip
这样的语句 -
将这句更改为
fastboot --skip-reboot update image-xxxxxx.zip
其实就是将
-w
去掉了,替换成了
--skip-reboot
,这样做的目的是避免刷机脚本清除用户数据,同时防止刷机完成后手机自动开机(开机前我们要先 root 啦)。
对了如果你选择了
--skip-reboot
,刷机脚本跑完后手机应该会停留在 fastbootd 界面,注意识别菜单选项,用音量键选择重启到 bootloader 然后电源键确认,即可继续下面的操作。
获取 root 权限
接下来的部分为 root 教程,没有需求的用户请选择性跳过。
首先我们提取需要破解的镜像 。将下载下来的完整镜像压缩包解压,得到下图所示文件列表:
然后打开如图所示红框中的压缩包,得到下图所示文件列表:
从这里开始,流程根据机型的不同也会有所差异:
- 如果你购买的设备是 Pixel 6 系列之前的设备(包含 Pixel 6 系列),这里我们需要提取 boot.img 用于镜像破解
- 如果你购买的设备是 Pixel 7 系列之后的设备(包含 Pixel 7 系列),这里我们需要提取 init_boot.img 用于镜像破解
我们将需要的镜像提取出来、放进手机,放到哪里不重要,待会儿能找到就行。接下来的 root 流程,则需要你根据自己的实际需求选择 root 方案:Magisk 兼容性强、模块生态成熟;Kernel SU 能够通过比较基础的设备完整性验证,无需繁琐操作即可从 Play 商店安装 Netflix、ChatGPT、Apple Music 等 app。
扩展阅读: Android 玩机社区正在走向消亡 | 少数派会员 π+Prime
破解镜像
前往 Magisk 的 GitHub 页面,下载
Magisk
,下载完成后用你喜欢的方式安装到手机上(
adb install
或者传输后手动安装均可)。安装完成后开始破解镜像文件:
- 打开 Magisk Manager,选择最上方的「安装 > 选择并修补一个文件」,然后找到刚刚扔进手机的镜像文件执行破解
- 破解成功后,Magisk 会在 Download 这个目录下生成一个破解好的镜像文件,找到它,然后把它扔回电脑
使用 Kernel SU 进行自动破解的流程类似。前往 Kernel SU 的 项目页面 下载最新版管理器(APK 文件)并安装,然后点击主界面右上角的安装图标并根据提示破解上面提取的镜像文件即可。
接下来我们就可以进行 root 了:
- 手机重启至 bootloader 并连接至电脑
-
命令行执行
fastboot flash init_boot
或fastboot flash boot
加上你破解的镜像即可,比如 Pixel 8 系列破解的是 init_boot 镜像,使用的是前者 - 完成后重启,完事~
SafetyNet/隐藏 root
为了保证你的设备在 root 后也能正常下载、安装和更新 Netflix 等 app,这里建议在 root 完成并开机后先别干的,优先执行 SafetyNet 相关的环境配置工作——如果你使用的是 Kernel SU 方案,那这部分正常情况下则可以跳过。
SafetyNet 的介绍有兴趣可以读这个(文章里的方法已经过时了): Android 玩机「神器」的矛盾与新生:Magisk Canary 更新详解
- 下载 PlayIntegrityFix 和 Shamiko 模块,然后传输至手机备用
- 打开 Magisk Manager,安装上面两个模块,然后重启(对了,这一步你可以把一些额外的模块也顺手装上再重启,减少重启次数)
- 重启后,打开 Magisk Manager,点击右上角的齿轮图标进入设置,勾选上 Zygisk 开关
- 然后点击「配置排除列表」,在排除列表右上角菜单里勾上「显示系统应用」,然后搜索下面这几个东西并勾选(中文系统下名称/英文系统下名称)
- Google Play 商店/Google Play Store
- Google 服务框架/Google Play Framework
- Google Play 服务/Google Play Services
- 其他检测 root 的应用,比如 Apple Music
注意,在笔者所使用的 Pixel 8 系列机型、最新版 PlayIntegrityFix 模块这一环境下,通过上述操作即可通过
MEET_DEVICE_INTEGRITY
认证;而如果你在执行上述操作后无法通过认证,不能正常搜索、下载和使用 Netflix 等应用,则需要手动寻找、替换新的设备指纹(fingerprints)来绕过检测。详细的说明和操作见
PIF FAQ
1
。
对了,既然提到了安装模块,这里推荐一个个人认为可以提升幸福感的模块: NotoSansCJK ,思源黑、动态字重、粗细分明,可以说是 Pixel 必备。
免 root 解锁网络功能
如果第一部分的内容与你无关,或者你已经被第一部分内容的篇幅吓到了,这一部分就是为你准备的。
在没有获取 root 的情况下,Pixel 6/7 系列可以解锁国内运营商 VoLTE 相关功能,Pixel 8 系列最近则有了进一步解锁 5G 网络的方法。
VoLTE 的基础性和重要性本文不再赘述了,对 Pixel 6/7 这两代设备而言, VoLTE 功能同时也是电信用户正常使用通话功能的前提 。因此这里推荐没有 root 的用户选择近期由韩国开发者 @ kyujin-cho 分享的免 root VoLTE 功能解锁方案。
说起 Android 这边的「免 root 玩机」话题,Shizuku 这款工具自然是少不了的。所幸 undefined此前已经分享过非常相近的介绍和配置方法,因此本教程的第一部分「Shizuku 配置」,请移步至下面这篇文章了解。
关联阅读: 别被 root 挡在门外:Shizuku 让 Android 玩机更简单
确保 Shizuku 服务已经正常运行之后,前往 Pixel IMS 的 发行版 页面下载安装该工具的最新版本。安装完成后启动 Pixel IMS,此时你应该能够看到一个 Shizuku 接口调用的权限请求,点击「总是允许」:
随后进入 Pixel IMS 的主界面(希望开发者后续能适配个 Material 3 不知算不算过分),点击左下角的 ENABLE VOLTE 按钮进行激活。激活后,VoLTE Status 区域下的 VoLTE Enabled by Config 选项开关会自动变成启用状态。
重启设备后你应该就能看见对应 SIM 设置中的 VoLTE 选项开关了。至此,电信用户已经可以在 Pixel 6/7 系列机型上拥有完整的 4G 网络体验。
参考链接: pixel-volte-patch | GitHub
针对 Pixel 8 系列的 5G 网络功能,近期 Google 在 Android 14 的 QPR3 Beta2 固件中「 不小心 」内置了一个为中国大陆地区直接解锁 5G 网络的基带,对应的系统版本为 beta-ap21.240216.010( 不是最新的 240305 ),基带版本为 beta-g5300i-240215-240223-b-11487724。
因此我们只需要下载上述系统镜像、提取对应的基带文件 radio-husky_beta-g5300i-240215-240223-b-11487724.img,然后通过
fastboot flash radio
指令刷入并重启即可。
由于该版本镜像现在已经被更新版本的替换掉了,这里直接提供适用于 Pixel 8 系列的 基带文件下载 。
root 后解锁网络功能
而如果你选择了 root 和 Magisk 这条路,root 权限则能在网络体验这件事情上为你带来更加完整的便利。本部分将基于此前的解锁流程简单介绍一下 Pixel 7 系列机型的 5G 网络、Vo5G 通话开启方法 。
关联阅读: 一日一技 | 为 Google Pixel 6 解锁国内 5G 网络支持
还是从 VoLTE 说起,你可以参考此前的教程使用 Magisk 模块 来解锁 VoLTE,不过我在后续的使用和测试过程中发现,对 root 用户而言即便不用模块也能打开 VoLTE 的相关设置。具体流程如下:
- 前往 Google Play 商店下载 MiX 文件管理器
- 打开 MiX 文件管理器,然后导航至 /data/user_de/0/com.android.phone/files 路径,过程中如果弹出 root 权限请求请选择授予
- 在上述路径中找到 carrierconfig-com.google.android.carrier-xxxxxxx-xxx.xml 文件并使用 MiX 文件管理器内置的代码编辑器打开
-
定位至编辑器末尾,在
</init-array>
和</bundle>
中间,粘贴以下字段(#后为注释记得去掉):
<boolean name="enhanced_4g_lte_on_by_default_bool" value="true" /> #默认开启 LTE
<boolean name="carrier_volte_available_bool" value="true" /> #开启 VoLTE 功能
<boolean name="vendor_hide_volte_settng_ui" value="false" /> #显示 VoLTE 设置
<boolean name="hide_lte_plus_data_icon_bool" value="false" /> #隐藏 LTE+ 图标
<boolean name="vonr_enabled_bool" value="true" /> #开启 Vo5G 功能
<boolean name="vonr_setting_visibility_bool" value="true" /> #显示 Vo5G 设置
<boolean name="show_4g_for_lte_data_icon_bool" value="true" /> #将 LTE 网络标识显示为「4G」,可选
这里需要注意的是,如果你是 eSIM 双卡双待用户,在 com.android.phone/files 路径中也会看到不止一份配置文件。如果你难以分辨哪一个对应想要开启的运营商,可以在手机的「系统设置 > 关于手机」中的对应 SIM 卡状态中看到。
搞定 VoLTE 和相关设置可见性之后别急着重启,接下来我们还是像去年一样,通过 网络信号大师 这款应用来解锁 5G 网络。
具体配置流程还是参考去年的教程,唯一需要注意的是,Pixel 7 系列用户的配置流程与 Pixel 6 略有不同,需要在「NR MODE SETTING」里选择 SA 或者 NSA & SA(其实相对更简单了)。下方的 NR Band Combo 可随意(FR2 对应 mmWave 毫米波通讯功能,美版会有、国内没用)。
完成所有操作后重启手机,然后你应该就能在设置中看到 5G 网络、VoLTE、5G 通话以及 2G 网络开关等相关设定了。
小结
简而言之,如果你是没有 root 的用户,通过本文第二部分教程,简单几步便能在国内解锁电信网络和三大运营商的 VoLTE 功能;如果你是 root 用户,通过本文第三部分教程则可以拥有完整的 5G 网络体验。
最后感谢为 Pixel 玩机社区不断贡献、为大家带来便利的所有开发者。如果本文对你有所帮助,请考虑为相关 GitHub 页面加上星标或帮助教程原始作者进行传播分享。
> 关注 少数派公众号 ,解锁全新阅读体验 📰
> 实用、好用的 正版软件 ,少数派为你呈现 🚀
2024 年 4 月:
- 更新了部分过时的功能描述,如「就近分享 -> 快速分享」
- 调整了文章的主要受众,本文内容现面向大部分 Pixel 新用户而非「Pixel 7 新用户」;相应的,主要内容中的操作流程细节也有更新
- 完善了解锁流程的数据清除警告
- 添加了 Kernel SU 方案的 root 教程
- 调整了部分流程,现在文章会建议你首先更新系统至最新版本了
- 更新了 SafetyNet 验证的相关内容,移除了已经不再维护的模块推荐
- 移除了对 SafetyNet 验证没有实际作用的 GSF ID 注册流程
- 更新了 Pixel 8 系列通过 QPR3 Beta 2 基带镜像直接解锁 5G 网络的相关流程
更新了新版 Pixel IMS 应用的截图,同时附上了运营商 ICCID 相关的信息查询方法。感谢读者的提醒。