作为一名玩机党,刷第三方 ROM 反反复复,最终却往往总是回归到原厂系统返璞归真,无论是稳定性还是流畅度,社区出品的第三方 ROM 大概率是比不上官方系统的……除非,这个原厂系统真的令你很失望。于是又一次,抱着破罐破摔的心态,我刷入了社区出品的 Pixel Experience GSI,却出人意料般的稳定和好用。
等等,什么是 GSI?GSI 的全称是 Generic System Image,翻译过来就是「通用系统镜像」,这个概念来源于 Project Treble。 自从 Android 8 引入 Project Treble 后,手机的系统文件和底层的厂商硬件驱动开始分离存放,更新系统时只需要更新系统文件即可。此项举措意在方便厂商加快 Android 大版本更新的步伐,自然也同样方便了第三方 ROM 的开发和更新,成为了社区开发的一大福音。从理论上来说,刷入某个 GSI,你的手机就会摇身一变,从一个系统切换到了另一个系统。
你的手机能刷 GSI 吗
前段说过,GSI 这个概念滥觞于 Project Treble 这个特性。因此,想要手机能刷入 GSI,前提之一就是支持 Project Treble。你可以下载安装 Treble Check 这个 app 进行检测,验证自己的设备是否支持 Project Treble。
通过了图中的第一项,意味着你的设备支持 Project Treble;通过了图中的第二项,意味着你的设备支持「无缝系统更新」特性,也就是支持 AB 分区,支持我们在之前另一篇文章《每个 Android 玩家都不可错过的神器(二):保留 Magisk 进行「无痛 OTA」》 中介绍的「重启一次就更新完了系统」绝妙更新体验。
确认手机支持 Project Treble 后,想要刷入 GSI 还有另一项前提,那就一切玩机操作的大前提:解锁 Bootloader(引导程序),关于解锁 Bootloader ,各家厂商各有自己的政策和步骤,在这里就不一一详细描述。
这么多 GSI 镜像,你该选择哪一个
如果你想要挑选一个 GSI 日用, 可不能随便拿一个刷入。GSI 能保证刷入后绝大部分功能运行正常,但那远远达不到日常使用的标准。适合自己的才是最好的,如果能找到经过测试能较好适配自己机型的 GSI,岂不是美哉?
挑选 GSI 的首要原则是机型适配,GSI 的开发者往往会有标注专门适配机型、作出的优化和存在的 bug,方便你进行挑选。甚至针对大多数机型刷入后都存在的 bug,开发者还会额外给出一些 zip 格式的修复文件包供刷入来解决问题。以我的手机 Nokia 7 Plus 为例,开发者蜗牛的 Pixel Experience GSI 标明适配 B2N、C1N、DRG、MATA 等六款机型,同时专门对 VoLTE、蓝牙、屏幕圆角等进行优化适配,也标明添加了什么小功能(比如锁屏显示充电功率)。
其次,也是非常重要的一条,你需要选对正确版本的 GSI 包。GSI 包往往分为两种,AB 包和 A only 包,分别对应不同类型的系统分区(System Partition)。如果你的手机在检测时通过了第二项,那么基本可以断定你的手机是 AB 分区,你需要选择 AB 包进行刷入。如果你的手机在原厂系统下没有通过第二项检测,那么很有可能是 A only 分区。如果你还不确定,你可以通过搜索引擎获得当前机型的更多资料来确认。
不过,如果你仅仅是想尝鲜 Android Q beta1,没有那么高的日用要求,让我们立刻开始刷入吧!
刷入 GSI 的具体操作指南
特别简单,看 GSI 开发者给出的说明。(完)
这不是开玩笑,开发者作为创造它的人,往往会第一时间在自己手中的设备上进行一番测试。所以开发者提供的刷入步骤和注意事项,简直是一份过河指南,把每一颗能踩的石子都给你标注好了。
而实际上,从前面的 GSI 原理介绍来看,我们也能给出一个相对通用的刷入步骤。总的来说,刷 GSI ,就是把这份通用的系统镜像(往往是 .img 格式) 刷入到手机的系统分区(System Partition) 罢了。
准备工作:
- 确保你的手机尽量原厂,不要刷有第三方内核、magisk、Xposed 等等魔改。
- 备份你的数据到网络、电脑、外置存储等手机以外的地方,因为你的所有数据即将被清空。
- 在电脑上准备好 adb、Fastboot 相关环境,下载好对应的 GSI 包和救砖包以防万一。如果下载到的 GSI 包是压缩包格式,你可以解压看看是否得到了一个 .img 格式的镜像文件。
TWRP 刷入法
如果你的机型有 TWRP 支持,那么情况就更为简单了。
- 进入 TWRP,先来一次恢复出厂设置,抹除数据。
- 把 GSI 从电脑上传到手机上,只要 TWRP 能读取到就行。
- 点击 Install ,通过点击右下角的 Install Image 按钮将刷入类型从 zip 切换到 img。
- 找到你下载的 GSI img 镜像文件,选择 System image,开始刷入。
- (可选)如果开发者给出了用来修复 bug 的相关 zip 包,切换刷入类型为 zip 后也一并进行刷入。
- 重启
电脑刷入法
如果你和我一样,没有 TWRP 支持,那就只能借助电脑来刷写来,几行代码,用不了多少时间:
- 对于首次刷入,我们需要重置手机到出厂状态。设备恢复出厂设置后,在启动时使用按钮组合重新启动到设备的 bootloader 引导加载程序界面,或者直接连接到电脑输入 adb reboot bootloader 重启到引导程序界面。
- 将设备连接到PC后,在下载所选 GSI 的同一目录中打开命令提示符或终端窗口。
- 输入命令 fastboot erase system(清除系统分区)
- 输入命令 fastboot -u flash system GSI.img (刷入 GSI 到系统分区)
- 输入命令 fastboot -w reboot (清除数据并重启)
当然不同的机型有不同的注意事项,比如 Pixel 2 系列需要关闭 Android Verified Boot (AVB) 等等,多多注意和留心社区、论坛、帖子中的注意事项。
除非开发者特别要求清除数据刷入(Clean Flash),GSI 后续升级不需要清除数据,直接刷入(Dirty Flash)即可。这样的情况下,电脑刷入法中最后的重启命令需要改为 fastboot reboot (去掉 -w 就不会清除数据)。
通过 GSI 体验 Android Q
作为一名机智的少数派读者,现在你一定能够回答标题中的第二个问号。Project Treble 的原意就是为了加快系统的大版本更新适配,GSI 更是让玩家能够在不同的设备、系统之间进行通刷。那么只要有一个 Android Q GSI,一切岂不是水到渠成?
xda 上的开发者 @Khode_Erfan 就把 Android Q 的系统文件做成了 GSI,另一位开发者 @MacTavishAO 更放出了针对这个 GSI 的修复包。你想跟踪 Q GSI 的后续更新的话,可以加入这个 电报群组。加入群组后,你还可以看到全球网友刷了这个 GSI 的反馈,比如哪些设备能够刷入,或者刷入后有什么样的问题,供你在刷入前作为参考。
好了,尝鲜党们,开始刷入测试吧!当前版本无法连接到加密 Wi-Fi,请谨慎
GSI 下载地址: https://build.lolinet.com/file/GSI/
工具包下载地址:https://www.androidfilehost.com/?w=files&flid=279429
刷前请确保你的系统版本在 Android 8.1 以上。
AB 分区:
1) 按照前文的方法将 GSI 包刷入到系统分区
2) 刷入工具包中的 permissiver_v2.zip
3) 重启
A-Only 分区:
1) 按照前文的方法将 GSI 包刷入到系统分区
2) 刷入工具包中的 permissiver_v2.zip
3) 刷入工具包中的 FixZygote.zip
4) 重启
结语
如果你解锁后对正在使用的机型原厂系统使用体验不理想,又有 GSI 开发者宣布适配你这个机型,没准你可以试试看刷一个 GSI, 尝试更换到另一个系统使用,说不定会有比原厂系统更好的体验。