【更新】Google 就阿里云一事发表声明,Andy Rubin 解释不兼容性
关于阿里云一事,各方都有不同的猜测。由于之前 Acer 和 Google 没有发表声明,不免使人怀疑这件事是否属于炒作。不过,Google 对这件事情发表了的最新声明可以证明其中并无炒作,确实是 Google 对 Acer 施加了影响。
根据 The Verge 的报道,Google 的声明如下:
兼容性是 Android 生态系统的核心,确保了开发者、制造商、和消费者一致的体验,不兼容的 Android 版本,比如阿里云,会削弱生态系统。所有开放手机联盟的成员都承诺开发统一的 Android 平台,而不是发布不兼容的 Android 设备。当然,这不会阻止开放手机联盟的成员参与其他竞争性的生态系统。
这是 Google 第一次对开放手机联盟成员做出警告。在此之前,开放手机联盟给人的感觉一直是松散的组织,没有什么责任存在,这次的事件证明,开放手机联盟成员是有限制存在的。从这次事件,还可以看出,Google 目前对 Android 兼容性的重视态度,显然阿里云系统已经超出了 Google 所容忍的范围。当然,那些不属于开放手机联盟的成员,比如亚马逊或 RIM 就不会受到这样的限制。
【更新】
今天,Android 部门主管 Andy Rubin 在 android 官方博客发表了一篇文章《兼容性的益处和重要性》,虽然没有提到最近的阿里云事件,但是发表的时机却很有深意。
在文章中,Andy Rubin 首先强调了良好生态圈的重要性,而开放手机联盟的建立,就是为了创造一个开放、良性的生态圈,Android 实现之间的不兼容是破坏生态圈的重要因素之一。什么是不兼容,Andy Robin 的解释是:
设想这样一种状况,在销售的每个手机上,平台都有一点不同。这种不同足以导致 Google 地图在一个手机上运行良好,另一个手机上运行非常缓慢。让我们举个例子,Android 上某个 API 是这样实现的,当屏幕上没有任何动作的时候,使手机睡眠几毫秒,以提高电池续航能力。这样一个功能的 API 原型看起来像是这样的:SystemClock.sleep(millis),其中的参数 millis 是设备睡眠的毫秒数。
如果某个手机厂商不正确的使用了 SystemClock.sleep(),将参数 Milliseconds 换成了 Seconds,手机休眠的时间将比预期长 1000 倍!这个厂商的手机在运行 Google 地图时候会非常糟糕。如果因为不兼容,导致应用不能在不同设备间运行良好,消费者会离开生态圈,接着就是开发者。良性生态圈会结束。
Andy Rubin 说,Google 希望在为设备提供商提供区分性的同时,避免开发者和消费者遭受不兼容的困扰。为此,Google 提供了免费的“兼容性测试工具包”,(兼容测试包遵循 Apache 协议,点击这里了解)这确保不同厂商的设备有兼容性。
虽然 Android 是免费使用的,但是只有兼容性设备才能从完全的 Android 生态圈获益,加入手机开发联盟的成员,应该构建统一的 Android 平台,而不是一堆不兼容的版本。
【更新2】Andy Rubin 在 Google+ 发布对阿里云系统的看法:
我们很吃惊的看到阿里巴巴集团首席曾明的话“我们想要做中国的 Android”,但事实上阿里云系统使用了 Android 的 runtime,很显然是从 Android 衍生的。根据我们对 http://apps.aliyun.com 上应用的分析,这个平台试图去做到兼容,但是没有成功。
与 Android 兼容是很容易的,开放手机联盟提供了所有的工具以及实现的细节。