该 commit 将更新供应商测试套件(Vendor Test Suite,VTS),测试的目的则在于查看 Android 智能手机是否兼容成为 Project Treble 的一部分。在这种情况下,测试会检查 Android 11 设备是否支持 A/B 分区。如果使用 Android 11 启动的设备不支持虚拟 A/B 分区,则它将测试失败。而如果设备无法通过 VTS,也就无法随 Google 移动服务一起提供。
A/B 无缝更新的工作原理
A/B 分区是指重复的只读分区集,重复的分区通常包括系统、供应商、引导和产品分区。它使 OEM 可以在未使用的非活动分区上安装 OTA 更新。
这种“A/B 分区”设置允许在支持的 Android 设备上进行“无缝更新”,就像 Google 的 Chrome OS 一样。更新过程几乎完全在后台进行,为用户节约了大量时间;同时还有助于用户避免出现更新损坏且无法安装时可能造成的损失。唯一的缺点是 OEM 必须为 A/B 分区系统保留更多的存储空间。
下载更新时,更新程序会在后台修补不活动的一组分区(一个“插槽”)。一旦将更新完成应用到非活动插槽后,系统将提示用户重新启动设备。用户重新启动设备时,非活动插槽将与活动插槽交换位置,从而完成更新过程。 如果引导新更新的插槽存在问题,则保留先前处于活动状态的插槽。下一次更新更新时,将重复此过程。
目前,已有多款 Android 设备实现了 A/B 无缝更新,包括有整个 Google Pixel 系列、小米 Mi A2、小米 Mi A2 Lite、华硕 ROG 手机以及几款摩托罗拉手机等等。
不过,谷歌如今仍未合并 commit,这也意味着有关 Android 11 强制 A/B 无缝更新的一切都还存在变数。
文章转载自 OSCHINA 社区