资讯 专栏
此为临时链接,仅用于文章预览,将在时失效

当微软说它允许移植别家应用的时候,它在说什么?

作者:金楠
2015/04/30 15:10

昨夜,科技圈又一场沸腾。

微软的Build2015大会如期召开,在第一天即是看点无数,Office平台化、可横跨Win10、OS X、Linux三大平台的Visual Studio代码、Win10统一商店、新的初始窗口Windows Spotlight以及可以将手机内容矢量扩大到大屏幕设备的Win10手机版Continuum平板模式等等。

当微软说它允许移植别家应用的时候,它在说什么?

然而有一则传了许久几乎成真,但当微软亲口宣布时,还是不禁让人虎躯一震的事情,就是微软宣布现有的Android和iOS应用均可以移植到Win10手机上来。

微软靠什么实现这一点?

微软在现场解释了实现这一点的原理,对于iOS应用来说,可以通过微软发布的Visual Studio代码来进行重构,转换之后可直接作为Win 10应用,微软称这项功能可以实现对原iOS应用代码的编写和调试,并且可以通过Objective C,使之成为完美的Win10应用。

而Android应用的移植则相对复杂一些,它是依靠对于Java和C++代码的Android应用进行重用,来创建用于Win10手机的应用,而为了实现这一功能,Windows Phone还将内置Android子系统。

当微软说它允许移植别家应用的时候,它在说什么?

在现场直播中,微软也当场移植了一个iOS上的小游戏《糖果粉碎传奇》和Android平台上的《Choice Hotels》 App,结果显示,移植后的程序运行起来很流畅。

其实看到这里笔者想说的是,微软说的大一统平台,果然不是吹的,这一下子就有了三大架构和三大平台了…

兼容和移植,是有区别的

其实支援其它平台的应用,微软早已不是第一个,黑莓、脱胎于Meego的Sailfish OS和更早以前的Web OS都干过这事。不过不同的是,黑莓支持Android应用是通过移植,而Sailfish OS则是兼容。

这两者的区别在于,移植是需要把原先Android应用的代码重新编写,例如Win 10就是靠把Android应用代码拿到Win 10平台上,用 Java 和 C++ 语言重编一次,最后生成APPX安装包,继而实现移植。

值得一提的是,微软给出的方案,其实已经是大大减轻了开发者的开发成本了,因为移植过来的Win 10手机版应用直接就会是通用应用,并且还能够加上Windows上的一些特性,比如 Cortana和动态磁贴等等。而微软还专门加入了一个应该是Android模拟器的“子系统”,估计也是为了能更加简化移植Android应用的门槛,比如解决Android应用对于软件权限的要求比Windows Phone高出太多的落差,而运用这么一个子系统,就能方便开发者不少工作(但由于远未达到听上去几乎是“一键移植”的那么简单,因此用户也不要太过兴奋。)

而兼容就是,直接把Android应用的APK安装包给放在手机里,就可以直接安装和使用。一般来说,想实现这一点通常是在自身系统内使用Alien Dalvik虚拟机建立了Android的运行环境,借此来运行Android应用。

乍一听上去,似乎兼容要更加方便,因为移植还多了一道重新编写的工序,无论后者怎么简化,它依然无法避免——但实际上,二者的差距其实并没有你想象中那么大,因为它们所做的,都只能算作是过程而已,但真正考核成败的,是“拿来”之后的结果如何。

能不能成?不好说

对于微软来说,最好的结果肯定是大家都不再买Android和iPhone了,而都来买Windows Phone,因为后者一个就能跨越三大平台,再加上自家的PC和XBox,画面简直不能太美。

但实际上,更有可能发生的事情却与之背道而驰,那就是Win 10手机版可能会就此告别原生应用了,因为开发者极有可能觉得,反正Win 10手机版是可以移植的,那么先开发Android和iOS应用显然更加划算。

这就好像是文摘杂志和原创杂志之间的问题一样,因为对于作者来说,反正前者是可以转载的,那么作者就会更顾着原创杂志那一头,这是人之常情,而对于文摘杂志来说,虽然它轻松的拥有了自己需要的内容资源,但它也失去了属于自己的原创内容,而这并非是长远之计。

这也就是为什么看似尝到了甜头的黑莓,其高管会愤愤说恨不得立刻剔除Android移植应用的原因,因为它让自己的系统失去了魅力和灵魂。

更别说通过移植之后,应用的体验也可能会打上折扣,毕竟因为只是方便移植,因此那些需要调动Android和iOS系统机制的功能在移植后通常是无法实现的,这就需要开发者用微软的API替换Google的API,而这中间能够影响到用户体验的关节实在太多了,特别是如果最终移植过来的应用不如在纯正的Android环境中的体验的话,那么移植也就基本没有了意义。

此外,还有一个主要的问题是时机,微软直到Win 10才开放移植,但现在Android+iOS已经拿下了近乎100%的市场份额,并且系统体验日臻成熟、也开始朝着其它平台拓展,可能没有人会搭理微软了,其实如果微软在3年前的Win 8上提供开放的话胜算会很大,但在当下,这一点很难被寄托。

但话不能说太死,毕竟微软此举也不是全无转机的可能,关键还在于执行力,比如能不能笼络好与开发者关系,是决定这一战略能否成型的关键,但考虑到微软此举在一定程度上让之前的开发者的贡献被大大降低,可能导致这部分核心开发者的背离。因而接下来微软只是靠降低移植成本和允许上架Win 10商店可能还不够,还需要对开发者有真金白银的付出,但微软能不能承受因此可能出现的利润下降?对于正处于转型之中的微软来说,这可能并不容易决定。

(插图来自The Verge)

长按图片保存图片,分享给好友或朋友圈

当微软说它允许移植别家应用的时候,它在说什么?

扫码查看文章

正在生成分享图...

取消
相关文章