因此有观点认为,竞争对手已经在生态整合上大幅度领先的局面,或是微软的Project Latte项目得以加速落地的关键所在。但有一点需要指出的是,Project Latte项目显然并不是从石头缝里蹦出来的,这是一个微软从故纸堆里进行的“考古式科研”项目。其实早在2015年,微软就在Build大会上宣布了将会为Windows 10嵌入一个Android子系统,也就是Project Astoria。 根据微软方面当时的说法,开发者可以直接将现有的.apk应用安装包上传至Windows Store,微软会将这一Android应用直接转换为Windows Universal App。同时其还提供了一个在线工具,供开发者上传.apk文件来检测转换之后的兼容性。并且在当年的的Windows 10 Mobile Build 10240中就已经完成了AOW(Android on Windows)功能,而在AOW文件夹中就包含了完整的Android 4.4.4镜像。
但是根据部分开发者的说法,Android on Windows在Windows 10 Mobile上的体验非常糟糕,严重拖累了手机的续航与性能表现。所以最终在Windows 10 Mobile Build 10240正式版上,AOW功能也完全消失,并且在2016年,微软方面也选择了关闭Project Astoria。 当然,微软方面并没有将Project Astoria弃之不顾,在其基础上,在2016年的windows 10内部预览版中还带来了Windows Subsystem for Linux (WSL)服务,用户只需开启这项服务,就能在windows系统上体验原生的Linux bash指令操作。
既然能够在windows系统中运行Linux,那么运行基于Linux的Androi也就成为了顺理成章的事情。但是不同于命令行操作的Linux,作为一个现代操作系统,Android所基于的是GUI(图形用户界面),好在微软在WSL2上新增了一个至关重要的特性,就是可以直接在WSL服务中使用GPU加速,并能调用Directx12 API。所以WSL2支持GPU加速就意味着系统可以调用显卡,并且微软也已经确定显示驱动程序模型 (WDDM) 的3.0版本在Windows 10 Insider Preview 21301中,增加了用户模式驱动程序。 在解决了GPU驱动的问题后,微软方面曾在去年12月宣布,支持的Direct3D 12 Gallium3D驱动已经合并到了Mesa 21.0中。通过这一驱动程序,就将允许像OpenGL与OpenCL这样的图形/计算API,在Direct3D上运行。在有了这些基础之后,Project Latte就能实现类似Android in a box项目类似的效果,并在Windows中运行原生Android应用。
然而Project Latte真的能够改变现状吗?或许这个问题还需要由谷歌来回答。因为抛开目前国内相对特殊的安卓市场,几乎所有海外Android应用要么依赖谷歌GMS,要么就是使用了Google Play Service API。虽然微软在之前的Project Astoria上通过映射,将GMS服务替换为自家的Bing地图API、Windows Phone地理位置API、Windows Store应用内付费 API,但问题是这种做法其实是在事实上分裂Android生态。 GMS事实上是Google Play Store、Search、Maps、YouTube在内的一系列谷歌服务的合集,这些应用服务相互之间更是互联互通相互支持,再加上官方还允许第三方应用调用这些应用中的API,并共同在Android的生态中铸就了一个以谷歌为核心的“小气候”。