疲于纠缠,Android N将不再使用甲骨文Java APIs

36氪  •  扫码分享
我是创始人李岩:很抱歉!给自己产品做个广告,点击进来看看。  

谷歌将在下一代 Android 系统 Android N 中用甲骨文(Oracle)公司的开源代码 OpenJDK 来替代后者的 Java APIs(Application Programming Interfaces)。

此事最先在上个月由 Hacker News 贴出的一段 神秘安卓代码库 露出,目前 VentureBeat 已得到谷歌的正式确认。

官方的回应是:

作为一个开源平台,Android 建立在合作共生的开源社区之上。在下一版的 Android 系统之中,我们计划将 Java 语言库替换为以 OpenJDK 为基础创造出来的通用代码库,便于让开发者开发 app 和服务。谷歌常年为 OpenJDK 做贡献,未来还将继续下去。

若要追本溯源的话,谷歌和甲骨文的争议从 2010年 就开始了,后者一直称谷歌的 Android 系统使用了甲骨文的 Java 版权和专利,并将谷歌告上法庭, 索赔 61 亿美元 。

在公理上谷歌是理亏的,此举想必也是迫于压力与常年消耗战带来的疲惫。虽然 OpenJDK 是 Java SE 的中的代码,同样隶属于甲骨文,但它是开源的,且 Java SE 在 2007年 诞生之时甲骨文还没有收购 Sun Microsystems、拥有 Java。

Android 提供一些 Java API 代码库来支持开发者用 Java 编程语言开发应用,主要分为两部分:代码库的 APIs,以及谷歌为了让代码库工作而开发的执行代码。甲骨文拥有 Java,并有两个这种代码库:专有 JDK 和开源 OpenJDK。谷歌使用的是后者,并已在某些领域有了应用,意味着其将分享这些执行代码。

从这段代码库的改动可以看出 OpenJDK 代码已经被加进 Android:

Initial import of OpenJdk files.

Create new libcore/ojluni directory with src/main/java and src/main/native subdirectiories.

Build ojluni into core-oj jar.

Use openjdk classes from java.awt.font package.

Copy all files from jdk/src/share/classes and jdk/src/solaris/classes directories in openjdk into libcore/ojluni/src/main/java.

Copy following native files from openjdk to libcore/ojluni/src/main/native: [long list of files]

谷歌声称这一改变是因为要使用第 8 版 Java 的功能,但要真是这样早就应该换了,其背后的缘由其实还是来自甲骨文的纠缠。事情发展到现在,赔多少钱还没定,但谷歌基本上不太可能再使用由版权的 APIs 了。

最后,案件尚未结束,而最终的审判结果将产生巨大影响:如果甲骨文胜诉,科技巨头们将不再能随意使用存在版权的 API 包了。

本文参考了多个信息来源: venturebeat.com ,如若转载,请注明出处:http://36kr.com/p/5041700.html

“看完这篇还不够?如果你也在创业,并且希望自己的项目被报道,请 戳这里 告诉我们!”

随意打赏

提交建议
微信扫一扫,分享给好友吧。