2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

谷歌为什么要对 Android 的开源严防死守?

  • 2018-07-27
  • 本文字数:2286 字

    阅读完需:约 8 分钟

上周,沸沸扬扬的 Android 垄断案把 Google 又一次推向了风口浪尖,在这次的垄断案中,Google 被欧盟起诉赔偿 50 亿美元,被起诉的其中一个原因是 Google 对外宣称 Android 是开放的,但其实他们只是开源了一部分代码,很多重要的代码都是闭源的。

从这些年 Google 的对 Android 的态度来看,他们正以各种手段控制开源,这与 Android 开放的口号是否相悖?Google 又为何这样做?首先,我们从 Android 发家史说起。

Android 发家史

2007 年 11 月,Google 推出了 Android 开源项目(AOSP),在此的几个月前,第一代 iPhone 发布,开创了智能手机的时代,当时 Google 还是苹果的应用程序合作伙伴,那时,Google 预料他们在移动市场上的未来将会是这样的:

如果 Google 不立即采取行动,未来我们将面临严峻的形式:一个客户、一个公司、一个运营商将是我们唯一的选择。

从上面这句话可以看出,当时 Google 十分害怕苹果会在未来统治移动领域,所以,当时,在移动领域还没有站住脚的 Google,为了对抗苹果,只好将 Android 作为一个开源项目推出。

此后,Android 在早期智能手机市场上的份额一路飙升。

今天,Android 在智能手机市场的份额从零增长到现在的80%还多,单从市场份额来看,Android 可以说赢了苹果。但“Android 获胜”和“Google 获胜”并不一定是同一回事。由于Android 是开源的,因此它并不是真正完全属于Google。任何人都可以自由地使用它,克隆源代码,并创建自己的fork 或备用版本。

众所周知,在移动市场上,抛开操作系统,App 才是一切。Android 在各种品牌的手机上得到大量安装,也意味着它将拥有大量的应用程序。如果一家公司fork Android,加上Android 已经兼容上万个应用,这家公司只需建立自己的应用商店并上传所有的内容即可。但是如果有公司开发出比Android 更好的操作系统,那么将会严重威胁Google 目前的地位。

Google 明白移动是互联网的未来,控制世界上最大的移动平台有很多的好处,但是又不可能收回开源的承诺,所以就引出了一个问题:如何控制开源项目?

众所周知,“Android”分为两个部分,第一部分是 Android 开源项目(AOSP)的开放部分,它是 Android 的基础,封闭的部分是 Google 旗下的应用程序,虽然 Google 并不会完全关闭 Android 开源项目,但是他们正在竭尽所能地利用现有的开源项目,主要的方法是:在封闭的 Google 保护伞下引入越来越多的应用程序。

Google 的闭源之路

谷歌闭源的应用程序一直存在着。起初,这些闭源的应用主要是 Gmail、Google 地图、Talk 和 YouTube。那时 Android 还没有那么大的市场份额时,谷歌觉得控制这些应用就足够了,所以将 Android 的其余部分变为开源项目。但是随着 Android 已经成为移动领域的巨头,谷歌决定对开放的源代码逐渐实行严格地把控。

较少的开源代码意味着 Google 的竞争对手需要付出更多努力。虽然 Google 无法杀死一个开源应用程序,但他可以将升级版本的闭源化使原来的应用形同虚设,从而让这个应用“报废”。当谷歌重新设计应用程序或将新的 Android 版本发布到 Play 商店时,通常会显示已闭源,同时 AOSP 版本的应用也会失效。

Google 还做了哪些工作?

控制 OEM

对 Google 来说,只拥有面向消费者的应用程序的控制权还不够,Google 还需要控制手机厂家。

如果某个公司设法 fork AOSP,克隆谷歌应用程序,并成为 Android 的竞争对手,这也是徒劳的,因为他很难找到手机厂商搭载他们的应用。

对一个开放的市场来说,说服一个 Android OEM 放弃 Google 而与他们合作是很容易的,但是 Google 对此早有防范。因为 Google 在移动领域真正的实力来自于对谷歌应用的控制上,主要包括 Gmail、地图、YouTube 和 Play 商店等,无论是大型还是小型的手机厂商都希望在手机上获得这些应用,由于这些应用程序不是开源的,因此需要从 Google 那里获得许可。那么 Google 肯定会在许可协议上附加一些要求,控制那些手机厂商,防止“叛变”。

此时,Google 推出了一个 OHA(开放手机联盟),加入 OHA 的 OEM 将得到 Google App 更多的授权。而加入 OHA 的 OEM 必须得签署一份协议:禁止构建非 Google 认证的设备,并禁止和模仿 Android 操作系统的企业合作。

早在 2012 年时,宏碁想在中国生产运行阿里巴巴的 Aliyun OS 的设备时,宏碁就收到谷歌的通知,若新产品上搭载阿里云操作系统,Google 将会解除与其 Android 产品的合作和相关技术授权,后来手机发布会也被迫取消了。

控制第三方应用

Google Play 的战略是将“Android 应用生态系统”变成“Google Play 生态系统”,让那些应用在 Google 认可的设备上轻松运行,在非谷歌认证的设备上寸步难行。

Play Services 是 Google 闭源的应用程序,它不仅吸引用户使用闭源的应用,还能通过 Google 的专有 API 控制第三方开发人员。

如果你使用了 Google API 并将你的应用运行在 Kindle 或任何其他非 Google 版本的 AOSP 上,结果是:恭喜,你的应用程序坏了!

在这一点上,Google 的想法是:Android 在移动市场上占有很高的比例,开发人员只需构建应用程序,使其运行良好,让广泛的用户受益即可。而 Google API 能帮助他们实现所有的这一切,但副作用是你的应用需要永久地依赖于拥有 Google Apps 许可证的设备。

总而言之,虽然 Android 是“开放”的,但是它是以“可远观而不可亵玩焉”的方式在开放着,只要你高兴,你可以将其用在任何领域,但前提是你需要得到 Google 的“祝福”,换句话说,如果你想对 Android 动歪心思,触犯了 Google 的底线,它可能会让你崩溃。

查看英文参考原文: https://arstechnica.com/gadgets/2018/07/googles-iron-grip-on-android-controlling-open-source-by-any-means-necessary/

2018-07-27 07:173290
用户头像

发布了 83 篇内容, 共 52.2 次阅读, 收获喜欢 187 次。

关注

评论

发布
暂无评论
发现更多内容

智慧社区管理平台建设,智慧平安小区整体解决方案

t13823115967

智慧社区安防系统平台开发

纵观 ActiveX 平台的兴衰史,看开发控件的技术演变

葡萄城技术团队

SpreadJS activex

电商平台如何激发内容生态

马踏飞机747

内容 内容分发网络 电商

OpenKruise 2021 规划曝光:More than workloads

阿里巴巴云原生

阿里云 开源 容器 云原生 调度器

有没有听说过通达快递?

escray

极客时间 极客大学 课程作业 大作业 架构师训练营第 1 期

Python的GIL

yunson

Python GIL

获奖名单|七日更挑战成功!

InfoQ写作社区官方

奖品 七日更 热门活动

对冲基金的子基金模式vs集中管理

9527

7 天开发后台系统技术小结

老魚

程序员 全栈 建站

智慧公安防控管理平台搭建,重点人员管控系统解决方案

t13823115967

智慧公安

LINUX SHELL脚本攻略

田维常

区块链app开发要多少钱?如何根据项目需求了解价格?

区块链数字货币交易所开发的简介

程序员修炼之路:你该知道的 7 个必经阶段

阿里巴巴云原生

阿里云 程序员 云原生 自我思考 成长笔记

云原生2.0时代,华为云DevOps立体运维实践

华为云开发者联盟

DevOps 运维 云原生 华为云

深度解析!滴滴内部开源Spring IoC和AOP源码小册

Java架构追梦

Java spring 架构 aop ioc

软件测试--中间件介绍

测试人生路

软件测试 中间件

四年三次获奖,PostgreSQL再度荣获“年度数据库”桂冠!

PostgreSQLChina

数据库 postgresql 开源

架构师训练营 - 大作业二

Pudding

数字货币交易所开发的功能与特点

Flink SQL 实战:双流 join 场景应用

Apache Flink

flink 流计算

这道面试题,出错率90%

田维常

面试

敏捷团队的质量保障赋能

BY林子

质量保障 质量赋能 敏捷测试

千里公路建设尽收眼底,3D可视化监测管养运,领导都惊呆了

一只数据鲸鱼

物联网 数据可视化 3D可视化 公路建设 智慧交通

漫画 | 带你领略前端发展史的江湖恩怨情仇

苏南

程序员 大前端 漫画 时代发展

国外低代码平台趟过那些坑,对国内低代码企业有哪些启示?

DT极客

测开之函数进阶· 第7篇《装饰器装饰类,通用装饰器,有啥区别呢?》

清菡软件测试

测试

2020年11期券商App行情刷新及交易体验评测报告

博睿数据

APM 数据 AIOPS 证券

我参与阿里巴巴 ASoC-Seata 的一些感悟

阿里巴巴云原生

阿里云 开发者 云原生 感悟 seata

Linux进程知识干货|收藏

赖猫

c++ Linux 后台开发 运维

如何防止短信验证码接口被恶意调用攻击?

香芋味的猫丶

短信 短信防刷 接口安全 验证码

谷歌为什么要对Android的开源严防死守?_Android/iOS_覃云_InfoQ精选文章