微软在Win11的发布会上宣称Win11能够兼容安卓应用程序,不过当时并没有详细的说明兼容的更多信息,而且目前的Win11预览版也还不支持安卓应用,所以很多人对于Win11兼容安卓还是一头雾水,不过在后续的开发者对话中,官方透露了其中的一些细节 。

文章插图
兼容安卓应用程序的功能有一个正式的名称,叫“Windows的安卓子系统”(WSA),看到这个名字,你应该大体上能明白这个功能是如何实现的了 。Windows 10中带有一套“Windows的Linux子系统”(WSL),借助Hyper-V虚拟机在真正的Linux内核上运行Linux应用程序,实现兼容 。(很多虚拟机运行在Host OS上,只能访问有限的资源,但是Hyper-V虚拟机不同,它允许Guest OS直接访问裸机硬件 。)普通的安卓手机用的就是Linux内核,而微软在WSL上为WSA搭建了一个安卓框架 。简单来说,就是在Hyper-V虚拟机上运行x86架构的安卓 。
这样的话,Windows下的安卓应用程序应该会像原生Windows应用程序一样,具有顶级窗口,可以通过点击任务栏图标打开,也可以固定到开始菜单 。在展示的时候,微软人员说过“在这个功能背后,我们搞了一个代理原生应用程序,在安卓应用程序模型和Windows应用程序模型之间搭了一座桥 。”这也就意味着Windows11可以给安卓应用程序提供开始菜单快捷方式、桌面图标、应用程序卸载列表条目以及其他可以让后者看起来更“Windows”的小壳子 。(Windows套壳安卓实锤)
根据用户计算机和应用程序可用性的不同,微软在新系统中会尽可能地少用甚至不用模拟 。Windows和安卓都运行在x86和Arm架构上,Arm更适合安卓,而x86更适合Windows 。如果你的Windows运行在Arm架构上,你想打开一个Arm架构安卓的应用程序,整个操作过程会很顺滑 。如果你的Windows运行在x86架构上,你想打开一个安卓应用程序,微软会给你一个此程序的x86版本 。如果没有x86版本可用,借助“英特尔桥接技术”,可以将Arm代码转换为x86 CPU可执行的代码 。虽然名字里有英特尔,但是装有AMD CPU的电脑同样可以使用此功能 。(AMD YES!)
微软实现兼容的方法与其他兼容安卓应用程序的操作系统使用的方法很像 。就拿Chrome OS来举例 。Chrome OS本身带有Linux内核,开发人员在顶部堆叠了一个容器化的安卓框架,借此来运行安卓应用程序 。在x86架构的Chromebook中,Chrome OS使用的就是安卓内置的Arm-to-x86转换 。对于Linux桌面操作系统,安装Anbox也是为了同样的目的——在Linux上加载安卓框架 。如今,你甚至能在WSL上运行Anbox 。
说起来x86架构的安卓,人们的记忆还停留在英特尔2012年推出的采用Atom芯片的x86手机,当时使用此芯片的华硕Zenfone直接被归为工业垃圾 。之后,X86架构的安卓取得了长足的进步;2016年推出的安卓Chrome OS可以看作是X86架构的安卓发展的一座里程碑 。在2016年之前,谷歌一直在推动Arm架构应用程序支持x86架构 。谷歌开发工具也默认同时输出Arm和x86文件 。2016年,谷歌预计Play Store中大约有25%的应用程序不支持x86架构,需要从Arm程序转换 。到今天,随着Chrome OS普及,x86架构的客户群更大,需要转换的应用程序占比应该低了不少 。
亚马逊、Sideloading和非Google Play生态系统

文章插图
不过,微软并未在Windows上用Google Play生态系统 。也没有尝试建立自己的安卓生态系统,而是与亚马逊合作,使用Fire OS设备使用的亚马逊应用商店 。亚马逊发布了一份新闻稿,但是只说了稍后将发布更多细节,本身没有多少实质性内容 。
- 油菜可以和鸡蛋一起做菜吗 怎么用油菜和鸡蛋做菜
- 单纯的醉驾怎么处罚 单纯的醉驾怎么处罚的
- 刀片服务器怎么拆出来 刀片服务器怎么查序列号
- 猫生完小猫不吃东西怎么办
- 如何从内网渗透到内网服务器? 内网怎么渗透到内网服务器
- 遇到三菱空调故障代码1PC怎么办?3个处理方法帮助你
- 手上烟黄太重怎么洗掉
- 遇到三菱空调温度显示l0怎么办?3个处理方法帮助你
- 遇到松下空调开机显示eo怎么办?3个处理方法帮助你
- 遇到博世壁挂锅炉显示ea怎么办?3个处理方法帮助你
