想开发 Android 分支?没门!
最近,诺基亚的 Androdi 手机的消息越来越多,不管是代号“诺曼底”还是“Nokia X”,它引发人们的讨论。有人认为微软应该放弃 Windows Phone,就好像亚马逊(Amazon)所做的那样,发展出一个基于 Android 的独立分支。
英国卫报的查尔斯·亚瑟(Charles Arthur)是这个看法的赞同者。他认为 Windows Phone 丧失市场先机,现在已经很难追赶。
根据 Flurry 的 2013 年年中的报告,全球 iPhone 有 5 亿存量,Android 有 8 亿存量。根据 Paul Thurrott 的测量,截至 2013 年,Windows Phone 手机在全球有 5000 万的存量。显然,WP 与其它手机平台的差距依旧很大,尽管外面有新闻称“WP 手机在 24 个国家的销量超过 iPhone”。
亚瑟赞同约翰·格鲁伯(John Gruber)的观点,纳德拉必须为微软找到新的使命与愿景:“微软的服务,与全球每一部联网设备相连。下一个具备普遍意义的东西,不是在任何设备上运行,而是与每部设备沟通。”
基于这个观点,微软发展 Android 分支是有利的——这样子微软就不必花大量的心思说服用户从 Android 切换到 WP 平台,也不必为应用数量而头痛。而且,微软也可以像中国的 Android 厂商一样,用自己的应用和服务,换下 Android 里的 Google 应用与服务。
不过,到底微软能否顺利开发出 Android 的分支呢?ArsTechnica 的皮特·布莱特(Peter Bright)则反对这个观点。他的理由是,实际上 Android 没有想象中那么开放,Google 正在不断提高开发 Android 分支的难度。
结果是,即便微软真的去开发一个 Android 分支,也无法真正获得 Android 平台的优势:大量的用户,大量的开发者。这是为什么呢?因为,Android 实际上分为开源和不开源的两个部分,现在 Google 将越来越多的新特性往不开源的部分转移,而通过升级 API 等方式来迫使开发者使用更多 Android 不开源的部分。
布莱特解释,Android 从系统层面分为两套代码:
- 一个是 AOSP(Android Open Source Platform),它包括了 Linux 核心以及 Dalvik 虚拟机,一套基础的 UI。它们采用了 GPL 和 Apache 等开源许可;
- 另一个则是 GMS(Google Mobile Service),它包括 Google Play Service 和 Play Store 套装应用。前者提供了一系列的 API,包括 Google 地图、应用内付费等等。而 GMS 是不开源的。
而现在,Google 将精力投入到 GMS 上,而不是 AOSP 上,以访问地理位置的 API 接口为例,GMS 的版本要比 AOSP 的更新更好用。实际上,AOSP 的地理位置 API 自 Android 1.5 之后,就没有太大的变化了。现在,与其说是 Android 应用,还不如说是 GMS 应用。
布莱特认为,如果微软真的要对 Android 做点什么,有以下四种方式:
- 采用 AOSP 以及 GMS 两套代码。这个方案相当于 Google 拥有代码控制权,对微软不是好的选项;
- 采用 AOSP,提供一些定制的部分。微软可以提供自己的应用与服务。这个分支可以兼容部分 Android 应用,但兼容性如何却不可知;
- 采用 AOSP,提供自己开发的 GMS 的替代品。这个方案提供最高的兼容性,但是微软需要付出大量的精力来开发 GMS 的替代品。而这实际上将平台的领导权让给 Google;
- 采用 AOSP,但应用层方面完全采用自己开发的部分。不过,对于 Android 来说,Linux 核心实际上并非是最重要的部分,而且微软已经开发了出 Windows Phone。
那么,当微软真的独立开发 Andorid 分支,但不采用 GMS 的话,就无法适配许多调用了 GMS API 接口的应用。当然,微软可以开发出取代 GMS 的东西,就好像亚马逊(Amazon)所开发的 Fire OS 一样。
但 Google 依然能够通过提高开发的步调,不断甩开竞争对手的距离,现在 Fire OS 的处境正是如此。这么做不光无法保证 Android 应用的兼容性,还可能因为 API 接口的关系,无法提供完整的应用体验。
最糟糕的是,不管如何,微软的控制权、领导权都会被削弱。
题图来自 wikimedia