在过去几年中,许多 Chromebook 都可以安装 Play 商店并运行 Android 应用。这为 Chromebook 打开了新的大门,使其不仅仅是美化的网络浏览器。现在,谷歌正在寻求对 Chrome OS 的 Android 应用程序支持进行一些重大改动。
Chrome OS 上的 Android 历史
大约四年前,谷歌为 Chrome 浏览器创建了一种运行 Android 应用程序的方式,称为 Android Runtime for Chrome(ARC)。这是专为 Chrome OS 设计的,但开发人员很快就了解到它可用于在任何桌面平台上运行 Chrome 浏览器中的 Android 应用。
虽然这种方法运作良好,但谷歌想要一些更有用的东西,特别是针对 Chrome OS。因此,他们开始开发下一代 ARC,「ARC ++」就此诞生。 ARC ++ 将 Android Runtime 与 Chrome OS 深度集成,允许使用 Play 商店等内容。这就是今天 Android 应用在 Chromebook 上运行的方式。
ARC ++ 之所以可能,部分原因是因为 Android 和 Chrome OS 都基于 Linux 内核。为了提高安全性,ARC ++ 实际上运行在「容器」中,这是一种将 Android 部件与其他 Chrome OS 隔离的方法。虽然这些努力肯定有所帮助,但 Chrome 团队已经承认存在改进的空间和潜在的攻击。
我们尝试将它们尽量完全隔离(使用命名空间、seccomp、alt 系统调用、SELinux 等等),但是在一天结束时,它们可以直接访问许多系统调用和内核接口,因此可以通过用 Android 的 NDK 编译的代码。
Chrome OS 上的 Linux 又有所不同
去年,谷歌在 Chrome OS上 发起了令人难以置信的努力,使 Linux 应用程序可供安装和使用(通常称为 Crostini)。这说起来容易,做起来却难得多。当然,如果你考虑一下,Chrome OS 是基于 Linux 的,这意味着在它上面运行 Linux 应用程序的确是可行的。
Chrome 团队决定创建一个虚拟机(或 VM)来运行 Debian(Linux 发行版)并将该虚拟机与 Chrome OS「主机」集成。虽然他们可以使用 QEMU 之类的现有虚拟机技术或 VirtualBox,他们认为从头开始创建专用工具更好,称为「crosvm」和「Termina」。
使用虚拟机有很多原因,但最大的原因是安全性。直接访问 Chrome OS 的 Linux 内核将为恶意代码或甚至病毒创造更多机会。
对于 Android,谷歌通过 Play 商店控制应用生态系统,这通常意味着可以信任的应用。如果你想自行安装 Android 应用程序,你需要将你的设备置于开发者模式,这可以让你做出类似的潜在不安全的事情。
在 Linux 上,谷歌没有那种控制水平,没有办法限制只有受信任的应用程序。使用虚拟机解决了这个问题,就像你安装恶意应用程序一样,你可以简单地关闭虚拟机,擦除虚拟机并重新开始,而不会影响整个 Chrome OS。
将虚拟机与 Chrome OS 集成在一起,使 Linux 应用程序在 Chromebook上 感到「宾至如归」,并不是没有困难。例如,最近的大量工作已经用于创建 GPU 支持,以允许更加图形化的 Linux 应用程序(以及可能的游戏)。
了解一下 ARCVM
据官方说明,谷歌「没有计划」对 Chrome OS 上 Android 应用的现状做出任何改变。然而,深层次来看,Chromium 团队一直在努力使 Chrome OS 的 Android 应用程序支持更像他们的 Linux 应用程序支持。
从现有证据中,这项名为 ARCVM(简称 ARC 虚拟机)的工作似乎很有可能通过在同一个 Termina VM 上运行 Android 来充分利用 Crostini 项目所做的工作。通过迁移到虚拟机,Chrome OS 的 Android 支持将能够利用相同的安全功能,并且在出现任何问题时能够轻松重置。
将 Android 应用与 Chrome OS 完全隔离,可以无需进入开发者模式即可侧载 Android 应用。能够侧载应用程序一直是 Chrome OS 用户长期要求的功能,因为许多与 Chromebook「不兼容」的应用程序实际上在侧载时工作得很好。它还可以在 Chrome OS 上访问像 Aptoide 这样的第三方应用商店。
除此之外,Android 应用开发者还可以在 Chromebook上 安装 Android Studio,开发他们的应用,并在设备上进行测试,而无需使用开发者模式。 鉴于谷歌近期通过 Chromebook 推动「安全开发」,这似乎是 ARCVM 努力背后最有可能的驱动力。
但是,与 Chromium 中发现的其他正在进行的项目一样,这个 ARCVM 项目可能完全被废弃,就像 Campfire 项目一样。 一旦制作完工作原型,他们就需要权衡利弊,看看增加的安全性和侧载应用的潜力是否超过了它可能对低端 Chromebook 的性能产生的影响。
ARCVM 的开发仍在进行中,并且它绝不是一个确认的项目,因此现在还无法确认何时才能在我们的 Chromebook上 见到它。我的个人猜测要么是今年晚些时候,可能是在 Chrome OS 上推出 Android Q 的时候。
可惜的是,Chromebook 目前无法在中国大陆无障碍使用。国内有一厂商正在打造中国版 Chrome OS —— FydeOS。现能兼容安卓运行环境及 Linux 虚拟机;携带有完整的用户账户体系、升级服务器、企业集管系统和应用商店。FydeOS 能适配绝大部分主流 x86 架构或 ARM 架构硬件设备,灵活性强。FydeOS 硬件设备 itNT 能提供媲美 Chromebook 的用户体验,是一款全新的中国版 Chromebook 平板设备。