本文将指引您将 Edge S Pro 国行系统转换为欧洲零售版的系统,并使其可以正常接收 OTA 更新。
至于我为什么要这么做?避开 Lenovo / Motorola 的远程施法只是其中一点 🤣。我最主要的理由是:欧洲地区的 GDPR (通用数据保护条例),地表最强隐私保护法规了解一下。
前情提要
USB 驱动的安装
点击以展开
请确保已正确安装 Motorola USB 驱动
官方版本在缺乏某些运行环境(如
Visual C++
等)的情况下,Windows 上安装可能会报错,安装不上(且无有效提示信息)推荐,该版本无需依赖运行环境库也可以正常安装(仅需 Windows 10 v1607 及以上版本)。是我从 Google USB 驱动 和 Motorola Rescue and Smart Assistant 提取而来,克隆或下载整个仓库,通过以管理员模式运行 bat 脚本,即可完成驱动的安装)
配置 ADB 的环境变量
点击以展开
配置 ADB 的环境变量的步骤
ADB 环境变量的配置方法:
Windows 10 及以上版本:按下 Win 键,键入 「environment variables」或『环境变量』,搜索预览结果选择编辑系统环境变量;『环境变量』→ 双击「系统变量」中的『PATH』→ 『新建』,在文本框输入
adb.exe
所在目录的绝对路径,如『D:\Program Files\platform-tools
』,最后保存即可。
基础常识
点击以展开
知悉启用 USB 调试的方法
『Settings』设置 →『About Phone』关于手机 → 快速连续点击『Build number』版本号,直至提示已启用开发者选项;
『Settings』设置 →『System』系统 →『Developer options』开发者选项 →『USB debugging』USB 调试
知悉如何将手机启动至 bootloader 模式
方法 1:设备处于关机状态下,长按『电源键』&『音量 -』,直至设备启动至 bootloader 模式后即可松开按键
方法 2:设备启用 USB 调试之后,用数据线将手机与电脑连接,通过 cmd 执行命令
adb reboot bootloader
重启至 bootloader 模式
知悉如何将手机启动至 recovery 模式
方法 1:设备处于关机状态下,长按『电源键』&『音量 +』,直至设备启动至 recovery 模式后即可松开按键
方法 2:设备启用 USB 调试之后,用数据线将手机与电脑连接,通过 cmd 执行命令
adb reboot recovery
重启至 recovery 模式
解锁 bootloader
点击以展开
请确保设备已经解锁 bootloader
解锁 Motorola 设备的 bootloader 有以下影响,请自行决定是否解锁:
原则上意味着放弃保修资格
解锁操作将会清除设备数据
解锁 bootloader 后设备 DRM 等级将从 L1 降低至 L3(目前发现欧版更新至 Android 13 又恢复成 L1)
解锁后设备启动将会提示“设备已解锁 bootloader”
重要分区的备份
点击以收起
⚠️ 备份重要的分区
cid
:用于分配 CPU ID、手机区域代码、bootloader 解锁标识符等。主管设备能刷入的固件persist
:主管出厂的一些数据,例如 IMEI、蓝牙,WIFI MAC 地址、设备 SN 等参数
- 下载 LineageOS 19.1 配套的 recovery
- LineageOS 19.1 recovery 下载地址(最新版本的 LineageOS 20 的
boot.img
必须与 dtbo 和 vendor_boot 配套刷入才能正常使用,19.1 的则可以独立使用)
- 将手机重启至 bootloader 模式,通过命令刷入 Lineage recovery
1 | # <boot.img_路径> 不需要手动填写,直接将 boot.img 拖至 cmd 窗口会自动填写路径 |
- 将手机重启至 recovery 模式,通过 Lineage recovery(「Advanced」高级 →「Enable ADB」启用 ADB shell),电脑使用命令进行备份:
1 | # 访问 shell,shell 环境以 `pstar:/ #` 开头 |
固件的下载及刷写
Edge S Pro / Edge 20 Pro / pstar 欧洲零售版(RETEU)固件下载:
选择最新的版本下载即可
RETEU 固件的刷写:
此处我们需要用到
motorola_flash_xml
工具(很多人喜欢用 TinyFastbootScript 刷机工具,感兴趣的可以自行去研究)协助我们生成 fastboot 刷写脚本,而本文使用的工具依赖于 Python。所以我们的操作如下:首先下载并安装 Python 最新版
- ⚠️ 安装的时候,确认勾选「Add
python.exe
to PATH」添加python.exe
到 PATH 的选项,其他保持默认即可。
- ⚠️ 安装的时候,确认勾选「Add
克隆或下载 motorola_flash_xml 整个仓库
将 RETEU 的固件
*.zip
解压到motorola_flash_xml.py
所在的目录(即flashfile.xml
与motorola_flash_xml.py
处于同一目录)通过 cmd 执行以下命令:
1
2
3
4
5
6
7
8# 将 cmd 的路径切换至 motorola_flash_xml.py 所在的目录,如:
cd /d D:\repo\motorola_flash_xml
# 生成刷写脚本:
python motorola_flash_xml.py
# 刷写 RETEU 固件:
flash_all.bat
执行完上述操作之后,RETEU 的系统就刷写进去了。
软件通道的转换操作
修改软件通道之后,您的设备将可以正常接收欧洲零售版的 OTA 更新。操作方法如下:
将手机重启至 bootloader 模式
更改『Software channel』软件通道为
reteu
设备处于 bootloader 模式下,cmd 键入命令:
1 | fastboot oem config carrier reteu |
您仍需要将设备恢复出厂设置之后,软件通道的修改才能生效
『Software channel』软件通道 的查看:
- 『Settings』设置 →『About Phone』关于手机 →『Software channel』软件通道
FAQ
关于回锁 bootloader 的问题(点击以展开)
Motorola 零售机的 bootloader 有三种模式:
oem_locked
:bootloader 的出厂状态
flashing_unlocked
:解锁 bootloader 后的状态
flashing_locked
:通过命令回锁的状态。回锁(
flashing_locked
)有以下影响:
回锁不能恢复您的保修资格(因为 bootloader 状态与出厂不符),且并不能恢复 DRM 等级;
如果您刷的是匹配地区的官方固件(且未经任何修改,如未装 Magisk 等),回锁您可能仍能正常启动;
但如若刷了其他区域的固件或第三方固件,回锁可能只会直接导致变砖;
回锁可能会导致您无法通过官方的解锁方法再次解锁 bootloader
关于系统降级的问题(点击以展开)
Motorola 全部机型的 Bootloader 和基带 (Baseband Part) 部分存在熔丝级防降级机制,刷入之后很可能无法降级回许久未更新的国行系统。
多数情况下,基带版本降级可能会导致设备 IMEI 丢失或手机信号丢失的情况,更新版本后则可恢复正常。
关于 Google 账户锁的问题
初次刷入 RETEU 的系统不存在 Google 账户锁,可以跳过不登陆 Google 账户。但如果您已经登陆过 Google 账户,未退出 Google 账户或通过 recovery 抹除设备(而非通过系统设置恢复出厂设置),再次使用 RETEU 固件则会触发 Google 账户锁(开机向导状态下,通知栏左上角有个
🔒
的标志,则为触发 Google 账户锁)。可以通过 Lineage recovery(「Advanced」高级 →「Enable ADB」启用 ADB shell)使用命令抹除
frp
分区解决:
1
2
3 adb shell
dd if=/dev/zero of=/dev/block/bootdevice/by-name/frp bs=512 count=1024
exit抹除完
frp
分区后,请再进入系统设置完成一次正常的恢复出厂设置(否则您可能会遇到一些奇奇怪怪的问题,如无法通过 apk 安装软件等)
截图展示
- 收到 OTA 更新的相关截图:
- 更新后关于手机截图: