水深火热的电信用户自救指南 —— Pixel 2 在 Android 10/11 破解电信

水深火热的电信用户自救指南 —— Pixel 2 在 Android 10/11 破解电信

发布日期:2019-11-29文章字数:1.9K

Pixel 2 在 Android 8/9/10/11 破解电信过程存档

最后更新于: 2021-01-09

注意⚠️:

  • 需要解锁 Bootloader
  • 请备份数据后尝试(头铁?直接上就完事儿了,数据坏了/丢了我不管哦
  • 本文所诉操作可能会导致您的手机(包括但不限于)数据丢失、极其卡顿、再起不能、红魔馆爆炸!

需要的资源:

注意 ⚠: 本资源内为电信配置文件


目录

Magisk 模块破解

  1. 下载 Pixel-QC835-AndroidQR-Volte.zip 文件
  2. 安装 Magisk 模块
  3. Enjoy

注意 ⚠:
个人实测可能无法正常通话,请留意

原理解释

(以下纯属推测)

原先的模块

原来的模块使用的是将配置文件注入到 /system/vendor/rfs/msm/mpss/readonly/mbn/mcfg/configs/mcfg_sw/generic/ 目录下,并替换/添加 mbn_sw.txt 与 oem_sw.txt 激活配置 (有一个可以省略,但我忘记是哪个了 😂️)

其中:
/system/vendor/ 目录链接指向 /vendor/

/vendor/rfs/msm/mpss/readonly/mbn/ 目录又链接指向 /vendor/mbn/

mbn 目录又是 readonly 的,故无法成功注入

后来的模块

后面这个模块将配置文件注入到 /vendor/mbn/ 去了,不再是 readonly,便可以成功注入

综上,此模块除注入路径不一样之外,并无区别

QPST 方法破解

准备

电脑端准备

卸载各类某某安全管家以确保顺利安装

下载 mbn.zip 、QUD.WIN.1.1 Installer-10037.3 Setup.zip 、 QPST_2.7.474.zip 、以及 ADB 工具

解压 mbn.zip 得到ct_hvolte_o.mbn 和 ct_volte_op.mbn 备用(ct 前缀为电信运营商的 VoLTE 配置文件)

解压 QPST_2.7.496.zip 并安装

解压驱动 QUD.WIN.1.1 Installer-10037.3 Setup.zip 并安装

解压 ADB 工具

手机端准备

在 TWRP 内刷入 Magisk-v21.2.zip

在 开发者选项 中打开 USB 调试

搞定 QPST 设别

  1. 将手机通过数据线链接上电脑(请勿使用无法传输数据的劣质数据线)

  2. 按住 shift 并右键点击在解压出的 ADB 工具文件夹中,在弹出的窗口中依次输入以下命令(记得在手机上授权哦)

adb shell
su
resetprop ro.bootmode usbradio
resetprop ro.build.type userdebug
setprop sys.usb.config diag,diag_mdm,adb
diag_mdlog

注意: 依次执行上述命令后,应该会卡在

failed to open diag socket…

这时按下 Ctrl + C,等待执行完毕即可

开始破解。。。

  1. 电脑打开 PDC Tool 并在下拉菜单中选择设备

  2. 点击 load 按钮选择下载的 xxx.mbn
    mbn 文件任选其一,其中 ct_volte_op.mbn 可显示中国电信

  3. 找到加载出的运营商配置文件后,右键选择并指配到 sub_0

    • 注 1: 文中是选择 CT 结尾的配置文件
    • 注 2: ct 为中国电信,cmcc 为中国移动 cu 则为中国联通
    • 注 3: 其他运营商都可通过此方法享受 VoLTE (需要对应配置文件,过程与本教程无异)

  4. 点击 active 应用

  5. 刷入 VoEnabler-v1.4.zip –开启 VoLTE 的 Magisk 模块

  6. Enjoy !
    重启有效,升级有效!

注意

疑难杂症之一: 开启 VoLTE 后连接 Wi-Fi ,在一段时间内系统将会自动关机重启(如已应用系统主题样式,将会在关机前恢复默认样式),并在重启后显示「系统已损坏,无法启动」等信息

解决办法之一: 关闭 Wi-Fi 通话


换其他运营商的卡后需要加载指定运营商配置文件才能使用
建议破解完成后将模块禁用并升级回官方 Magisk

备份 EFS 恢复破解

注意 ⚠️:

  • 此方法需要一个破解电信后的 EFS 文件,需要降级到 Android 8.1 获取
    • 个人实测 Android 9 部分版本无法成功获取正确的 EFS 文件,推荐直接降级到 Android 8.1

准备 EFS 文件

降级

降级教程可按照 Google Developers 官网教程来,看不懂请自备翻译,下面我会简单的说一下


降级包 Google Developers 官网有提供

这里我放一个 8.1.0 (OPM2.171026.006.G1,Jul 2018) 的官方直链(dl.google.com 可在国内正常访问,速度极佳)

  1. 解压下载后的包

  2. 开始刷入

  • macOS
      1. 打开终端键入 cd 后空格,将文件拖入后回车
      1. 键入 . ./flash-all.sh
  • Windows
    • 双击 flash-all.bat 即可
  1. 等待即可,完成后手机会自动重启进入系统

Magisk 预准备

在 TWRP 中刷入 Magisk(官方版本就行,可以不用上面提供的)

打开 Magisk 应用,首页中的 安装选项 取消勾选 保留 AVB 2.0/dm-verity 选项,再次安装一遍

文件准备

下载 enable_volte_pixel2_china.zip

解压 enable_volte_pixel2_china.zip 到任意文件夹

解压的文件夹中的 ./system/vendor/rfs/msm/mpss/readonly/mbn/mcfg/configs/mcfg_sw/generic/ 中的 china 文件夹便是重点。
将此文件夹复制到根目录下的 /vendor/rfs/msm/mpss/readonly/mbn/mcfg/configs/mcfg_sw/generic/,然后将其权限修改为 0755(三读一写三执行)

返回上级文件夹,打开 oem_sw.txt,在末尾添加如下文本

mcfg_sw/generic/china/cmcc/commerci/volte_op/mcfg_sw.mbn
mcfg_sw/generic/china/cmcc/commerci/volte_su/mcfg_sw.mbn
mcfg_sw/generic/china/cmcc/lab/agnss_lo/mcfg_sw.mbn
mcfg_sw/generic/china/cmcc/lab/conf_vol/mcfg_sw.mbn
mcfg_sw/generic/china/cmcc/lab/eps_only/mcfg_sw.mbn
mcfg_sw/generic/china/cmcc/lab/lpp_loct/mcfg_sw.mbn
mcfg_sw/generic/china/cmcc/lab/nsiot_vo/mcfg_sw.mbn
mcfg_sw/generic/china/cmcc/lab/rrlp_loc/mcfg_sw.mbn
mcfg_sw/generic/china/cmcc/lab/tgl_comb/mcfg_sw.mbn
mcfg_sw/generic/china/cmcc/lab/w_irat_c/mcfg_sw.mbn
mcfg_sw/generic/china/cmhk/commerci/volte_op/mcfg_sw.mbn
mcfg_sw/generic/china/ct/commerci/openmkt/mcfg_sw.mbn
mcfg_sw/generic/china/ct/commerci/subsidiz/mcfg_sw.mbn
mcfg_sw/generic/china/ct/commerci/volte_op/mcfg_sw.mbn
mcfg_sw/generic/china/ct/commerci/hvolte_o/mcfg_sw.mbn
mcfg_sw/generic/china/ct/lab/cta/mcfg_sw.mbn
mcfg_sw/generic/china/ct/lab/test/mcfg_sw.mbn
mcfg_sw/generic/china/ct/lab/test_eps/mcfg_sw.mbn
mcfg_sw/generic/china/ct/lab/test_no_/mcfg_sw.mbn
mcfg_sw/generic/china/ct/lab/volte_co/mcfg_sw.mbn
mcfg_sw/generic/china/cu/commerci/openmkt/mcfg_sw.mbn
mcfg_sw/generic/china/cu/commerci/subsidiz/mcfg_sw.mbn
mcfg_sw/generic/china/cu/commerci/volte/mcfg_sw.mbn
mcfg_sw/generic/china/cu/lab/test/mcfg_sw.mbn

返回,保存即可

测试文件

删除 /data/vendor/radio/ 文件夹(这步是清除 radio 缓存

重启,查看是否能使用对应的运营商,能即可进入下一步。

提取 EFS

TWRP - Backup - EFS Swipe to Backup

只勾选 EFS 即可,然后滑动备份

推荐将 /sdcard/TWRP/ 保留好,这个是你能使用能使用对应运营商的前提

恢复 EFS 破解

破解完成后,便可正常更新系统

若线刷,TWRP 恢复备份后删除 radio 缓存重启即可使用

这是我整理的遇到的情况

  • TWRP 刷 OTA 包
    • 可用
  • TWRP 刷 OTA 包后删除 radio 缓存
    • 可用
  • 线刷
    • 若切换网络类型,将会导致 radio 缓存失效
      • 不可用
    • 其余不涉及 radio 缓存的操作都可用
  • 线刷后删除 radio 缓存
    • 不可用

在更高的版本中,TWRP 无法解密 data,无法读取 /sdcard/ 下的文件,我对此的解决办法是将 TWRP 文件移动到 U 盘,然后使用 OTG 转接器连接,恢复时手动选择存储设备即可

如果无法恢复后无法使用,请刷入 Magisk 模块 —— Pixel-QC835-AndroidQR-Volte.zip

碎碎念

这个想法其实我也有,之前我在手机上尝试使用 Android 10/11 的新 mbn 命名方式,奈何手机上操作复杂,编辑 mbn_sw.txt,oem_sw.txt 这俩文件没有电脑上好使,可能是路径错了还是啥的,测试失败后便接着用 备份 EFS 恢复破解 了 🤣

参考链接

机锋
XDA
XDA
XDA