Windows支持安卓应用有何障碍
微软将在下一代Windows系统中添加对安卓应用的直接支持的传言已经发酵很久了。从市场角度,缺乏手机、平板设备移动应用支持的Windows系统支持安卓App是个不错的策略,可以很大程度上打消用户选择Windows移动设备的疑虑。但是,Windows要原生支持安卓应用还需要面临许多现实困难,这些困难不解决,反而可能伤害Windows系统本身的信誉。
简单地让安卓应用运行在Windows系统中很容易,现在就有第三方开发的Windows版本安卓模拟器,对各类应用的兼容性很好。Windows可以通过虚拟机来支持安卓App,将应用需要的数据,如通讯录信息、本地文件库等通过虚拟机转换为安卓应用可以读取的格式,这样就可以很完美地运行绝大多数安卓程序了。但是,事情并不是看上去这么简单的。
最大的风险是安全隐患。Windows的手机版本从诞生之初就摆脱了困扰桌面版本多年的安全性较差的形象,凭借类似iOS系统的严格权限控制策略一举成为最安全的手机系统之一。桌面版本的Windows到了8.1这一代,对病毒与恶意软件的抵御能力也提升了几个层次。微软对应用商店的管理也相当严格,Windows Store几乎没有Google Play那样的让恶意软件混入市场的耻辱记录。下一代的Windows 10的整体安全性肯定会胜过现在的安卓平台,这也将是微软的一大竞争优势。
然而,一旦Windows能够原生支持安卓应用的运行情况就不同了:安卓平台的App早就习惯了使用过多的权限、读取大堆的系统数据,并随意与其他应用共享存储空间。系统控制这些应用的权限并不难,理想的做法是将每个应用的权限限制在最低必要水准,不该有的权限一律毙掉--但是无论是系统还是用户自己都难以辨识哪些权限该保留哪些该踢掉。许多应用要正常工作需要读取通讯录、各种传感器数据、共享目录、GPS数据等,偏偏这些数据经常都十分敏感,很容易成为隐私泄露的源头--何况安卓应用在泄露隐私、隐藏恶意功能方面劣迹斑斑。权限控制是安全保护的最重要环节,却恰恰是最让人头疼的部分。
第二个麻烦是性能。在PC平台上运行安卓应用问题不大,因为主流PC的性能远远胜过旗舰智能手机,有充足的资源来支持虚拟机模拟ARM平台流畅处理安卓程序;但主流的Windows手机在配置上大都比同时代的安卓机型低一级,尤其是内存容量相差较大。主流安卓智能机已经普及2G内存,Windows手机却依旧停留在1G水平。这点内存再在底层的Windows系统上通过虚拟机跑安卓App,效果可想而知。此外,大型游戏、图像处理等应用在芯片速度较低的Windows手机上运行也自然不会有什么令人满意的体验。
如果Windows想要在桌面PC上也支持安卓应用,那么又一个问题出现了:为触控优化的应用很难用键盘鼠标来控制。有些情况下用键盘鼠标完全不能正常使用,用户又不可能为此专门买块多点触控屏。考虑到这一点,微软几乎不可能让桌面平台获得原生安卓应用支持。
其他的一些可能的障碍包括分辨率兼容性——还好主流Windows手机的分辨率和主流安卓设备差不多,所以这个问题不大;安卓应用对系统基础功能,尤其是GMS(Google Mobile Service)的要求——这意味着Windows可能要在虚拟机中预载GMS服务;支持安卓所需要的专利授权--所幸微软的专利库让它不用太在意这件事,需要时进行交叉授权即可。
还有一个不可忽视的矛盾在于,如果所有的问题都得到了解决,Windows可以完美地当成安卓系统来用,那么开发者何必费事去开发Windows应用?微软的目标是让Windows应用成为主流,而不是为安卓的兴旺添柴加火。支持安卓应用终究只能是权宜之计,而不是基本原则。
综合这些分析,微软即便提供了系统原生安卓应用支持也将有很多限制:首先,微软的主要策略将是提供方便的工具帮助开发者将安卓应用转换为Windows应用;微软不会在桌面平台中支持安卓;在移动平台上,微软可能会采取白名单或独立的应用商店的模式,仅允许通过微软审核的安卓应用在Windows系统上运行;最后,可能只有达到一定配置水平的Windows设备被允许运行高性能要求的安卓应用;通过这些手段,微软可以一方面让主流安卓应用成为壮大Windows生态的生力军,另一方面将潜在的风险控制在最低水平。
考虑到Windows 10的发布时间,我们可能会在Windows 10的第一个重要升级版本中看到安卓应用原生支持能力。这项功能可能成为微软在移动领域的一项杀手锏,帮助Windows跻身三大移动平台系统之列。对于业界而言微软的这种做法当然是好事,毕竟安卓和iOS的战争持续这么久,第三方的崛起总归能让剧情变得有趣一些。