谷歌计划在 Android 11 上强制支持 A/B 无缝更新-冯金伟博客园

  据 XDA 报道称,谷歌正在计划在所有未来的 Android 11 设备中强制使用 A/B 分区,以使 Seamless Updates(无缝更新)成为所有人的标准功能。XDA 开发人员在 AOSP Gerrit 上发现了一个名为“Require Virtual A/B on R launches” 的 commit,由 Google Project Treble 团队的工程师 Yifan Hong 提交。

谷歌计划在 Android 11 上强制支持 A/B 无缝更新-冯金伟博客园

  该 commit 将更新供应商测试套件(Vendor Test Suite,VTS),测试的目的则在于查看 Android 智能手机是否兼容成为 Project Treble 的一部分。在这种情况下,测试会检查 Android 11 设备是否支持 A/B 分区。如果使用 Android 11 启动的设备不支持虚拟 A/B 分区,则它将测试失败。而如果设备无法通过 VTS,也就无法随 Google 移动服务一起提供。

  A/B 无缝更新的工作原理

  A/B 分区是指重复的只读分区集,重复的分区通常包括系统、供应商、引导和产品分区。它使 OEM 可以在未使用的非活动分区上安装 OTA 更新。

谷歌计划在 Android 11 上强制支持 A/B 无缝更新-冯金伟博客园

  这种“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 无缝更新的一切都还存在变数。