Linux 发行版/系统

开源正在毁掉 Android 吗?

前言:长久以来流传着一些观点譬如 Android 不是真正的开源,开源在毁掉 Android 等等,ZDnet 最新文章又再一次挑起这个话题,你的想法是什么?欢迎在文章末尾投票或者留言表达你的观点。


Oracle 曾经公开表示“Android 是破坏开源的罪犯”,理由是 Android 对 Java 开放性的影响太大,而且这种影响几乎无法逆转。甲骨文指控整个 Java 开发者社区因为 Android 的原因已一分为二,某些开发者转向了 Android 平台,导致了 Java 的开放性大大受限。甲骨文联席 CEO 萨夫拉·卡兹(Safra Catz)即使在法庭上也毫不客气地说:使用 Java,“他们只需一次编程就可以在所有地方运行,但当你在 Android 平台上开发时,在除 Android 以外的其他地方都无法运行。” 当然 Google 不是好欺负的,当时就反击了回去,反驳说真正破坏开源的是 Oracle,两家公司这几年就这么争争吵吵过来的。 (这里不得不补充一个笑话,Oracle 一直声称他们支持开源,是开源社区值得信任的好伙伴)android-broken 昨天 ZDnet 发表署名文章表示“Being open source is killing Android”,小编把这篇文章做了全文翻译,事实上小编不太认同这篇文章的观点,不过我们可以看看原作者 Adrian Kingsley Hughes 是怎么说的。

开源正在毁掉 Android,事情是什么样呢?我们想想 Android 面对的一些主要问题,解决了吗?曾经普遍认为,Android 面对的最大问题就是碎片化,有太多不同的 Android 版本和不同尺寸的设备需要适配,导致用户很难第一时间获得最新的更新。意识到问题很好,那么新的问题来了,怎么能解决这个问题呢?(下面这张图就是令人眼花缭乱的 Android 碎片图)

Android-fragmentation-devices

我敢打赌,关于这个问题,你也很难有什么好的对策,因为 Google 早就尝试过了。不管怎么样, Android 的立命之本就是开放,这就意味着一旦 Google 发布了一个新版本,OEM 厂商们和电信运营商们可以第一时间取得它,这一步必将导致分裂,OEM 厂商们会为每一个尺寸的设备加载相适应的代码,这就带来了差别。而更新也是一个大问题,Google 不能向每一台 Android 设备直接推送更新,因为鬼才知道 OEM 厂商对它推出的 Android 设备做了哪些修改和定制,很多架构变化和大量的代码修改更是致命。 更新确实是一个大症结,Apple 可以在一年之内让 85% 以上的 iOS 设备升级到新版本,形成鲜明对比让 Google 痛苦不堪的是,一年之内往往只能有略略超过 10% 的 Android 设备更新到新版本,而过度到一个完整的新版本生态,则是四年之后的事情了。

四年对于科技行业来说,真是太他妈悠久而冗长的一段时间了!

如果陶醉于可以运行在数量纷杂众多的 OEM 厂商硬件设备上,并且为此沾沾自喜的话,那么你就错了,这一定是一个悲剧,你也一定会为需要适配这么多不同的硬件变得一团糟,Linux 已然这样,而 Android 又是一个典型的案例。不管怎样,你总需要做出一个决定,是要兼容更多平台?还是要利润率或者市场占有率?

Android  生态系统难道注定要成为一个烂摊子吗? 也许不必。

对于 Google 来说挣脱这个混沌状态的一个可行出路就是,自己完全掌控 Android,并且将之闭源变成一个私有项目。Wow,怎么能这样?Android 不正是因为开源才获得今天的成功吗?确实,曾经是的,但是我认为,不再是了。 在早些时候,毫无疑问, Google 需要 OEM 厂商们,正如 OEM 厂商们需要 Google 一样,因为要打造一款高品质的智能手机可并不是一件容易的事情,需要像 HTC、三星、LG、摩托罗拉、索尼这样的专业硬件厂商才可以,但是现在,富士康也可以非常容易的组装出一台高品质的智能手机,并且还比前面这些 OEM 大厂做得更便宜。

Android-phone

但是如果你认为 Google 不能自己做?那就错了,其实他们已经在做了,很多人也已经发现了,大量的新代码和新特性没有放到开源的 AOSP (Android Open Source Project) 项目中,而是放到了封闭的 Google Mobile Services。而前文提到的 Oracle 之间的官司促使 Google 不断从开源走向封闭,如果 Google 要为它这么做找一个借口的话。

当然,Android 有它的私有版本并不意味着像三星、HTC 和 LG 这样的大咖必须要让路,Google 可以给这些 OEM 厂商发放授权许可,使它们接受 Google 的条件来使用 Google Mobile Services。而 OEM 厂商们为什么愿意接受 Google 的条件从 Android 切换到一个私有的平台呢?OK,虽然牺牲了一些自由,但是可以快速推送更新给用户的好处也很明显,OEM 厂商们不用花大量的时间和精力去为各个机型做新版本的 Android 适配,要知道这可是一个非常大的工作量,事实上,任何厂商也很紧张,如果竞争对手有 Android 的最新功能特性,而它没有,那么接受 Google 的条款就是最好的选择了。

厂商这边可以轻松搞定,运营商这边也没有什么好抱怨的,虽然我们知道它们总喜欢搞点定制化的东西,喜欢把它们自己的品牌和 Logo 塞到 Android 里面去,但是它们根本没有任何能力对 Google 提出要求。而且 Google 也可以提供一种机制,既不影响 Android 的升级更新,也给 OEM 厂商和电信运营商留一些个性化和定制化的空间。 何况这么做还能给 Google 带来一些切切实实地好处。

第一个明显的好处就是可以有效遏制像 Amazon 这种竞争对手试图打造一个自己操作系统的居心。如果 Google 闭源的话,如此一来, Amazon 就只能靠自己了,这会大大增加它们开发的难度和花费。

二来,微软大量的专利授权费将变得有悬念了, 要知道 Microsoft 每年光从硬件制造商那里讹来的专利授权费就高达数十亿美金。  Google 可以跟 Microsoft 达成某项协议,而且 Google 肯定不会像过去的这些硬件制造商那么容易被摆布,这意味着微软获得的授权费将会大大减少。 授权机制可以让 Google 获得更大的控制权,硬件设备只需运行纯粹的 Android 系统,而不必捆绑其他厂商的垃圾程序。还可以解放更多的设备,让许多运行多年的老设备不至于失去升级的希望。

简单地说,Android 已经变成了一团糟,Google 没有理由继续打造这个开源操作系统,特别是当下 Android 有着很大的竞争优势可以利用的情况下。

原文链接:http://www.zdnet.com/article/being-open-source-is-killing-android/
本文链接:http://www.linuxstory.org/being-open-source-is-killing-android/  (翻译人:闻其详)


全文完,事实上小编本人不太认同这篇ZDnet原文作者的观点,你的意见是什么呢?欢迎留言讨论。

你觉得开源正在毁掉 Android 吗?

View Results

加载中 ... 加载中 ...

对这篇文章感觉如何?

太棒了
0
不错
0
爱死了
0
不太好
0
感觉很糟
0
bootingman,是“booting” 加上 “man”的一个合成词。 术语“booting(引导)”是“bootstrapping”的简写,描述计算机从零开始启动的过程,同时也表示一个古老的谚语“通过自力更生而出人头地“。 “引导”的思想在于一个困难的、复杂的目标可以通过一个小的动作开始,然后以这个小的动作为基础,一步一步地达到期望目标而完成。这也是我想做和正在做的。

    You may also like

    4 Comments

    1. ;ljk;o

    2. GMS(google mobile service)和android其实关系并不大. 它只是运行在标准android设备上的一套服务框架/app集合而已.
      gms闭源是很正常的, 毕竟它属于google service.

      但同时, google play对于android应用生态来讲是十分有利的, google play只向通过了android cts验证的设备发放license. 这保证了任何拥有google play service的android设备能够运行任何google play上的应用.

      oem厂商需要自己修改android的目的其实也是希望将用户从google play的入口, 拉回到自己发布的应用入口. 但其实这很难.

    3. 这篇文章还是有道理的,但是没有考虑到中国的GFw,除非手机厂商愿意做升级镜像服务器。

    回复 Jack Peng 取消回复

    您的电子邮箱地址不会被公开。 必填项已用*标注

    此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据