今年6月,为了高考而战的高中之旅终于走到了终点,这台为了躲避学校智能手机监管+限制我手机使用时间的多亲Qin F21 Pro也正式完成了它作为学生手机的历史使命,摇身一变成为了我的刷机练习备用机,踏上了不断折腾的新旅途……

前期理论

这台Qin F21 Pro搭载了联发科的低端处理器,出厂系统为阉割版的Android 11,采用vab分区,支持Project Treble,这意味着它具有很高的可玩性

几乎任何2022年以前的MTK处理器,都有一定的漏洞,可以通过COM口+MTKclient的方式解锁Bootloader和刷机,我使用的是mlgmxyys大佬基于MTKclient制作的解锁脚本,经过解锁过程中不断的插线拔线的几次尝试后,终于是把bootloader的成功解锁了(虽然说解锁过程中出现了一点意外导致备份文件没有生成,以后可能锁不回去了)

接下来,就是进Recovery了,这台机子因为没有音量键,和平常手机进入Recovery的方法并不相同,也顺便简单说明下

开机按住挂断键、左上角的Q键和左下角的*,按住数好每7s左右就稍微松一下挂断键(不然长时间按挂断会导致强制重启),机子在经过Orange State阶段的时候也照样这样做,过了Orange State就能进入一个显示No command的界面,接着按住挂断键,再短按上键,就可以进入Recovery

另外刷写GSI时,因为super分区仅有4GB,因此只会用到A槽或者B槽,另一个槽基本上没有空间塞备用系统了,因此更新和刷写的时候都要小心下,别刷错槽了

TWRP

TWRP作为刷机工具中大有名气的Recovery,肯定受到了我第一时间的关注

但是可惜的是,因为Qin F21 Pro这机型总体来说还是比较小众,并没有多少开发者愿意适配TWRP

虽然网上也流传着一些第三方的TWRP,但是Bug多多,最严重的就是fastboot模式插上电脑不识别,导致无法在fastbootd里刷写system和调整分区大小

如果你不小心刷了这些有Bug的TWRP,你可以刷回原厂boot来解决

说到这里,顺带提下刷机的几种模式:SPtool(高通则为9008)、bootloader模式、fastbootd模式
这三种刷机的范围从大到小,前两种是刷写宏观的,最后一种是刷写微观的

fastbootd模式
bootloader模式

这句话当然很难理解,所以我这里给了两张图
可以明显看出来,bootloader模式和fastbootd模式可以操作的范围是不同的

因此我们只能在fastbootd模式中才可以刷写system分区

Magisk

这台F21Pro和其他机型安装Magisk的方式都差不多,可以使用mtkclient或则带userdebug的GSI进入adb自己提取Boot或者使用我前面提供的原厂Boot修补即可,接着就是熟知的进入bootloader然后 fastboot flash boot_a xxx.img(注意这里a还是b要自己判断下)

顺带介绍下mtkclient和GSI提取boot的使用方法

mtkclient

首先下载软件,根据github上的readme文件所示,输入 python mtk r boot,vbmeta boot.img,vbmeta.img即可
更多玩法请见readme所示

userdebug-GSI

事实上,有些GSI并不提供userdebug的版本,需要自己找找合适的GSI
此处的GSI也能通过DSU临时安装来获取boot

安装完成后,输入以下指令

1
2
3
4
adb shell
su
cd /dev/block/by-name/
ls -l boot_a

就会得到boot_a存在的位置
最后把这个位置复制下,输入

1
dd if=<前面给出的位置> of=/sdcard/boot.img

然后就能在sdcard目录下找到提取出来的boot了

通用 Bug 及修复

键盘背光灯问题(关闭背光灯)

以下代码通过adb或者root后的XposedEdge执行均可(开启就把0换成1)

1
2
echo 0 > /sys/class/leds/mt6370_pmu_led1/brightness
chmod 000 /sys/class/leds/mt6370_pmu_led1/brightness

另外这里有一份调好了的XposedEdge配置文件,支持以下内容,可以自行根据需要下载

  • 双击Q键解锁
  • 短按返回键返回,长按多任务试图
  • 长按8和0调整音量
  • 默认关闭键盘灯(需要开启root权限)

蓝牙问题

设置 - Phh Treble Settings - Misc feature - Use System Wide BT HAL

Google Play认证

在手机上安装 DeviceID或者 Dev Check,在软件中找到 GMS服务框架ID,复制并填入认证注册页面的方框中(可能需要代理及自己的Google账号,理论上能注册100个)
过大概1h之后,在设置-应用中清除GMS框架的全部数据,再次打开应该就可以正常使用了

GPS定位

说起来奇怪,我刷了不下3个GSI,每个GSI都将我的定位定到了东南亚,打开 GPS Test 发现一颗卫星也搜不到,看起来网络融合定位也失效了,目前还没找到修复的方法,希望大佬给点指导

emmm后面再看貌似又好了,其实什么也没动,奇怪……

OpenStreetMap的定位

T9键盘相关修复

T9键盘部分功能无法使用:桌面按下数字按键快速拨号

大部分 GSI 需要修改键盘映射来正确识别按键,可以尝试用 system/usr/keylayout/Generic.kl的原版文件替换掉 GSI 中同路径的文件(记得备份),注意需要将文件权限改为 644 才能正常读取

如果没有原版镜像的可以这里自取一份 Generic.kl的压缩包

大部分按键默认只能作为输入按钮,失去了原版系统中的特殊功能,但是所有按键均可以后期通过 XposedEdge 按键映射来恢复它本来有的功能,或自己添加新功能(见上面XposedEdge 部分)

充电问题

在充电状态下开机 GSI 会导致误识别为充电状态,导致电源管理策略错误耗电量激增

因此在开机前最好先把电源线拔出

VoLTE

大部分 GSI 默认都是 VoLTE 不可用,可以尝试修复:
进入 Phh Treble Settings - IMS feature
点击 Install IMS APK for MediaTek R vender
打开下面两个开关

系统测评

既然想要折腾,就少不了刷写各种 GSI 系统了,每个系统都会有独特的体验,又因为是 GSI 是通用镜像没特殊适配,每个系统又都有自己独特的Bug

当然,在刷写之前,必备的理论知识也是不可少的,基本流程如下

为了新系统能够正常载入,以下命令的2、3行会清除系统所有用户数据,有需要请先备份

1
2
3
4
5
adb reboot fastboot
fastboot erase userdata
fastboot erase cache
fastboot flash system xxxx.img
fastboot reboot

下面就来浏览各个系统,权衡利弊,选出自己心意的ROM吧

Pixel Experience

相信每个搞机玩家,都对Pixel的类原生有一定的向往,它拥有Pixel手机上几乎所有的体验,包括Google助理、多任务视图提取文本等一众实用功能,非常吸引人

因为这台手机支持刷写GSI的原因,我选择了在Github下载PixelExperience_Plus_arm64-ab-slim-13.0-20230713-UNOFFICIAL.img.xz(不选其他的是因为system可能不够大导致刷不进去,大概最大在3.6G左右)

然后就是fastboot一条龙

虽然PixelExperience的名头听起来很响,然而实际用起来,Bug还是不少的

大概有这些:

  • 无法设置锁屏密码(会导致不断软重启,需要清data恢复)
  • 开机的Google logo无法显示
  • 无法在“壁纸与样式”中更换本地壁纸
  • 相机里不能直接打开相册
  • 键盘灯默认无法关闭(已在通用 Bug 中说明)
  • T9键盘按键无法使用:(已在通用 Bug 中说明)

神奇的是,Google logo和壁纸的Bug在我之前使用DSU的相同包测试的时候是没有的,不知道是怎么弄成这样的,所以测试的时候最好还是直接刷了测试,免得DSU和实际表现不一致

总的来说,个人认为这个包是难以日用的

ArrowOS

ArrowOS,在外界大多数评价来看,是比较流畅和省电的系统,在F21Pro上也一样,从刷机到使用1天基本上很少出现掉帧卡顿的情况

我使用的是ArrowOS-13.1-arm64_bgN-Unofficial.img.xz

ArrowOS的桌面

但是还是会有一些痛点:

  • 无法设置锁屏密码(会导致不断软重启,需要清data恢复)
  • 默认桌面启动器、Google电话的部分UI缩放倍数有问题,导致一些文字会被图标遮挡或被裁掉1/4(可以设置修改界面大小解决,但是其他软件按钮也会相应变小)
  • 键盘灯默认无法开启(已在通用 Bug 中说明)
  • T9键盘按键无(已在通用 Bug 中说明)
  • VOLTE 失效

相比与上面的PE,这个还算是能日用的

exTHmUI

使用的是酷安上一个大佬提供的exTHmUI-11-AB-bvN-2.4GB-vndklite-Phh-Treble.7z,由朋友帮忙测试

这个包虽然说安卓11,但是有一个很大的优势:支持锁屏密码

虽然说还是会有一定的Bug,但是相比起来还是算轻微了

  • 键盘灯默认无法关闭(已在通用 Bug 中说明)

Project Elixir

使用的是ProjectElixir-3.10-arm64-bgN-13.0-20230805-1655-OFFICIAL.img.xz,因为之前觉得ArrowOS挺好用,就留下来了,接下来用的都是DSU来测试,可能会有一点小的差别

然而,当我满怀信心装上DSU-Sideloader准备开测的时候……却发现它一启动就进fastboot,根本没办法进系统,看来这个系统是和我无缘了啊(有再想验证的朋友可以帮忙实机刷system给点反馈)

后面我又不死心,国庆假期又尝试了一下他们的最新版 ProjectElixir-3.12-arm64-bgN-13.0-20230927-1740-OFFICIAL.img.xz,出乎意料的是,竟然它能够正常启动了。

那么,按照惯例,来测特性。Project Elixir的优点,我觉得可以分为三类:好看,好听,好用

先说好看,在众多类原生 ROM 当中,它给的自定义选项在目前测过的 ROM 里面是最多的了,桌面设置里面图标、搜索、甚至最近任务都能自定义,锁屏、状态栏、快捷菜单的自定义程度也是超高的。即使拿到手什么也不干,用默认的字体和默认的壁纸,我依然可以说它就是最好看的类原生系统。

然后来说说好听,在默认状态安装下,会自动打开点击和锁屏提示音,它没有用 AOSP 原本那种老掉牙的提示音,而是全部自己重制了一遍,让我听着就非常有质感。

好用,在于众多堪比国产系统的本地化,什么国产系统的三指滑动截屏、游戏空间、应用多开、息屏手势、电池温度监控等全学过来了,对于用惯了国产系统的人来说应该是最合适的选择了。

因此,在这巨大的优势下,一些小 Bug 可能就显得没那么显眼了。在我的测试中,独有的小 Bug 貌似只有一个:无法显示开机动画,就只是在开机的时候会黑白闪烁有点辣眼睛而已。

其他的 Bug 也就这些,在同行衬托下算很好的系统了

  • 无法设置锁屏密码(会导致不断软重启,需要清data恢复)
  • 键盘灯默认无法开启(已在通用 Bug 中说明)
  • T9按键问题(已在通用 Bug 中说明)
  • VOLTE 失效(中国联通测试)

结语

这其实是我刷机之旅的第一站,此前我输入知道大致的刷机流程,但是因为手边只有一台红米的主力机,为了确保正常生活不被影响,一直不敢放开胆子去随便刷
另外,一上来就上手多亲这种小众的、没多少教程、没ROM适配的机型,全部自己摸索还是难度挺大的
所以,非常感谢酷安及多亲交流群中的各位大佬,虽然他们有时候会被我的新手胡乱的操作气疯,因为我一些必备知识缺少而感到无语,但是不管怎样,他们仍然是我入门刷机过程中非常重要的老师
其实,即使到现在,我依然还有很多概念没理解,比如什么底包、设备树、Super扩容……当然,我也会继续学习,把不懂的搞懂

最后,这台手机因为折腾的人比较少,我常常无法判断ROM中的Bug是我自己的偶发事件,还是本身就有的必然事件
如果有人愿意折腾且得到和我测试中不一样结果的,欢迎在下方评论区反馈,我将会不定时更新系统评测章节中的内容