热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

谷歌将在安卓的下一版本中停止使用JavaAPI

        谷歌公司已确认,安卓将下一版本中停止使用甲骨文公司的Java API。谷歌公司已经将安卓操作系统中的Java应用程序编程接口(APIs)更换为OpenJDK了。OpenJDK是甲骨文公

http://p2.qhimg.com/t014a178c0799fb305b.png

        谷歌公司已确认,安卓将下一版本中停止使用甲骨文公司的Java API。

谷歌公司已经将安卓操作系统中的Java应用程序编程接口(APIs)更换为OpenJDK了。OpenJDK是甲骨文公司的Java程序开发套件(JDK)的开源版本。上个月,有一匿名开发者向Hacker News提交了一份安卓代码库,而这一消息最初也来源于此。

谷歌公司已经向VentureBeat网站透露,Android N将会完全采用OpenJDK进行开发,而不是采用安卓自身的Java API。

谷歌公司的一名发言人表示:“作为一个开源的平台,安卓操作系统的进步是建立在整个开源社区的共同努力之上的。在我们即将发布的新版安卓操作系统中,我们计划移除安卓中的Java语言代码库,转而使用OpenJDK,并为开发人员开发应用程序以及各项服务提供了一个通用代码库。谷歌公司与OpenJDK的开发社区合作已久,我们希望在将来能够为OpenJDK项目贡献更多的资源。”

安卓所提供的某些Java API库能够支持采用Java编程语言所开发出的应用程序,其中主要可以分成两大部分:代码库的API,以及能够使代码库正常工作的应用代码甲骨文公司研发出了Java编程语言,目前有两种方式来实现这些代码库:即专用的JDK版本和OpenJDK的开源版本。谷歌公司既然已经决定彻底转向使用OpenJDK,那么这也就意味着其功能的实现代码也将会开源。

提交的代码中,我们可以清除地看到其中有8902个文件被更换了,这也就表明OpenJDK的代码已经添加进了安卓系统的代码之中:

http://p2.qhimg.com/t015fb34f23f25ef407.png

谷歌公司希望安卓的开发者们能够接受公司的这一决定,因为这将会简化开发人员编写应用程序时所要用到的代码。原本的Java API库将会被通用代码库所取代,而不会再有大量的代码库存在。也许真的是这样,但是如果这只是谷歌公司转向使用OpenJDK的唯一原因,那么谷歌在很多年以前就可以这样做了。

当我们询问谷歌公司做出这一改变的实际目的时,谷歌指出:在去年,公司发布了Java 8,以及新型的lambdas表达式。因此,谷歌公司希望能够将更多的资源应用到OpenJDK中,这一举措也是为了公司的长远而考虑的。

甲骨文公司(Oracle)

然而,Hacker News的用户却迫切地想知道,此次代码提交事件是否意味着甲骨文公司与谷歌之间的法律纠纷已经成功地在庭外和解了,或者这只是谷歌公司保护自己的一种高调行为。这是一个非常好的问题,但是,由于甲骨文公司的诉讼仍在进行之中,谷歌公司并不承认其与此次代码提交事件有关,同时该公司也拒绝对此次事件进行评论。

2010年1月份,甲骨文公司兼并了Sun公司。在此之后,甲骨文公司于2010年8月份就版权问题以及专利侵权事件而将谷歌公司告上了法庭。甲骨文公司表示,安卓操作系统不能够在没有得到许可的情况下使用Java的API接口。谷歌公司反驳称,这些API是不受版权保护的,因为它们对于软件开发,合作,以及创新而言,是不可缺少的必要组件。

在2012年5月,陪审团发现,谷歌公司并没有侵犯甲骨文公司的专利。陪审团表示,Java的API是不受版权保护的。在2014年5月,联邦巡回法院推翻了地区法院的部分判决,这一结果让甲骨文公司看到了希望:Java的API是受到版权保护的。在2015年6月,美国最高法院拒绝审理此案,并将其送回了一个较低级别的法庭进行审理。所以谷歌公司辩解称,它们对甲骨文公司Java API的使用是完全合理以及合法的。

在这一来一回之后,谷歌公司决定完全投入OpenJDK的“怀抱”,难道这一切只是一个巧合吗?其实不太可能,但这些都不重要了,因为最终的结果才是最重要的:新版的安卓操作系统将会基于OpenJDK进行开发,而不是甲骨文公司专有的JDK版本。

无论是哪种情况,谷歌公司现在仍然不能完全改变现有的安卓版本,而且公司最终的决定仍然将受到密切的关注,因为谷歌公司的决定将会对软件开发的过程产生巨大的影响。


推荐阅读
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • Java自带的观察者模式及实现方法详解
    本文介绍了Java自带的观察者模式,包括Observer和Observable对象的定义和使用方法。通过添加观察者和设置内部标志位,当被观察者中的事件发生变化时,通知观察者对象并执行相应的操作。实现观察者模式非常简单,只需继承Observable类和实现Observer接口即可。详情请参考Java官方api文档。 ... [详细]
  • 本文介绍了RxJava在Android开发中的广泛应用以及其在事件总线(Event Bus)实现中的使用方法。RxJava是一种基于观察者模式的异步java库,可以提高开发效率、降低维护成本。通过RxJava,开发者可以实现事件的异步处理和链式操作。对于已经具备RxJava基础的开发者来说,本文将详细介绍如何利用RxJava实现事件总线,并提供了使用建议。 ... [详细]
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • macOS Big Sur全新设计大版本更新,10+个值得关注的新功能
    本文介绍了Apple发布的新一代操作系统macOS Big Sur,该系统采用全新的界面设计,包括图标、应用界面、程序坞和菜单栏等方面的变化。新系统还增加了通知中心、桌面小组件、强化的Safari浏览器以及隐私保护等多项功能。文章指出,macOS Big Sur的设计与iPadOS越来越接近,结合了去年iPadOS对鼠标的完善等功能。 ... [详细]
author-avatar
岸本瑠可的秘密_344
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有