Android代码抄袭Java曝猛料 新证据出现

Oracle最初告Android代码里侵犯了他们旗下Java知识产权的时候,大多数不明真相的围观群众都是站在Google这一边的,毕竟Oracle蛮横不讲理惯了嘛. 但是,这次我们还真是当了不明真相的围观群众了,美国专利博 ... Oracle最初告Android代码里侵犯了他们旗下Java知识产权的时候,大多数不明真相的围观群众都是站在Google这一边的,毕竟Oracle蛮横不讲理惯了嘛.
但是,这次我们还真是当了不明真相的围观群众了,美国专利博客网站FOSS Patents周五撰文称,在Android 2.2的源代码中发现了43个与Java代码中完全相同的文件.FOSSpatents博客是专门研究分析科技侵权案件的,他们今天抛出了一枚重磅炸弹:他们发现至少有43个Android源文件是直接从Java的代码里复制/粘帖过来的(如下图)!
任何人都可以从网上下载到Android 2.2的代码并对其检测.该博客作者弗洛安.穆勒(Florian Mueller)称,他发现Android中43份文件代码与Java 2标准版第5版中的代码完全相同.其中部分代码甚至还清楚地被Sun表明为"专有/机密".
穆勒称,"不管这些代码属于私有还是GPL协议,都不应该被甲骨文之外的第三方以Apache开源协议公布出来."
当你发现37个Android源文件里都有Oracle/Java标记为"私有/机密"以及"不要发布"字样,而且至少有6个以上的 Android 2.2 Froyo和Android 2.3 Gingerbread代码都是从Java 2 Standard Edition反编译出来并在没有得到授权的情况下重新通过Apache开源授权再发布出来的时候,你用脚趾头也想的出到底Android是不是侵权了. 没错,Google就是直接复制了Oracle的Java代码,粘帖上新的授权,发布出来.
不过这些复制的代码似乎都是测试之用的,还谈不上太严重,但是抄了还是抄了,Oracle应该不会大事化小的.
两个疑点
关于Florian Mueller发布的关于Android抄袭Java代码的文章里,存在两个疑问.
首先是第一组的7个抄袭的java文件(PolicyNodeImpl.java, AclEntryImpl.java, AclImpl.java, GroupImpl.java, OwnerImpl.java, PermissionImpl.java 和PrincipalImpl.java)都属于源代码里的测试分支.任何程序员都不会将测试代码放到最终发布的产品里.这些测试代码都是内部测试之用,以确保软件发布前的质量.
然后是另外一组的37个抄袭文件,他们确实被打包成一个叫做MMAPI.zip的文件里了,并为了对某个类型的芯片组进行支持而进入了音频驱动原生代码库里.这其实是值得深入挖掘的部分,但仔细检查之后你会发现这些文件也并未随Android发布出来,Google里确实有人开始不小心将它们放进了最终代码里,但后来都删除了.
再说说第一组的7个文件,他们都是Sun发布在自己网站上的,帮助开发者测试自己的代码debug之用.但有Android或Harmony开发者用他们反编译并重建之,而不是直接用了Sun提供的代码.之后还在文件头部错误的粘帖上了Apache的授权,可能是自动的脚本吧.但毕竟他们没有随最终的Android发布出来.
PolicyNodeImpl.java这个文件在2010年10月30日从源代码树里删除,另外6个Java文件则在2011年1月14日被删除,删除这些文件的开发者Dan Bornstein给出的注释是"删除无意义的测试".
是,Google确实在Android里抄袭了Java的代码,但可能都属于两次错误的操作,而且这些抄袭代码都没进入最终发布的 Android里,所以怎么说呢?情节还不算严重吧.人民群众可以理解所谓的"不小心"或"临时工所为",但Oracle可不是善茬儿,它可能理解 Google吗?

转载于:https://www.cnblogs.com/521taobao/archive/2012/03/17/2402500.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/387521.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JS之数据类型v(** v**)v个人笔记

<body> <!-- 单词记忆 argument&#xff1a;实参 assignment&#xff1a;赋值 instance&#xff1a;实例 1.JS中的数据类型分为以下类型 *值类型&#xff08;基本类型&#xff09;*String&#xff1a;可以为任何字符串*Number&#xff1a;可以为任何数字*boolean&…

unity3d 各个目录的意思

1.首先&#xff0c;你得理解Unity中各个目录的意思&#xff1f; 我这里说的是移动平台&#xff08;安卓举例&#xff09;&#xff0c;读&#xff0c;写。所谓读&#xff0c;就是你出大版本的包之后&#xff0c;这个只读的话&#xff0c;就一辈子就这些东西了&#xff0c;不会改…

WordPress Option API(数据库储存 API)

WordPress Option API 是提供给开发者的数据库存储机制&#xff0c;通过调用函数&#xff0c;可以快速、安全的把数据存储到数据库里&#xff08;都在 wp_options 表&#xff09;。 每个设置的模式是 key – value&#xff0c;利于扩展。Option API 不仅仅给主题和插件开发者用…

asp.net core根据用户权限控制页面元素的显示

asp.net core根据用户权限控制页面元素的显示 Intro 在 web 应用中我们经常需要根据用户的不同允许用户访问不同的资源&#xff0c;显示不同的内容&#xff0c;之前做了一个 AccessControlHelper 的项目&#xff0c;就是解决这个问题的。 asp.net core 支持 TagHelper 和 基于 …

Please let us know in case of any issues

Please let us know in case of any issues转载于:https://www.cnblogs.com/zhangchenliang/archive/2010/05/18/1738117.html

Java面向对象(二)

source:http://blog.java1234.com/index.html?typeId1 Java类的继承 1&#xff0c;继承定义以及基本使用 定义&#xff1a;子类能够继承父类的属性和方法&#xff1b; 注意点&#xff1a;Java中只支持单继承&#xff1b; 私有方法不能继承&#xff1b; 2&#xff0c;方法重写 …

游戏通讯方式

农药自从上线以来&#xff0c;依靠着强大的产品力以及腾讯的运营能力&#xff0c;在游戏市场上表现可谓是风生水起&#xff0c;根据第三方的调研数据显示&#xff0c;《王者荣耀》渗透率达到22.3%&#xff0c;用户规模达到2.01亿人&#xff0c;每日的日活跃用户&#xff08;DAU…

小小c#算法题 - 3 - 字符串语句反转

题目&#xff1a;反转语句。 如I love Beijing! 反转后输出 !Beijing love I 特点是指反转单词的顺序&#xff0c;其他字符&#xff08;这个可以自己指定&#xff09;不反转。且不能用内置函数&#xff0c;如Split和Substring。 分析&#xff1a;我们需要保证一个单词的字…

unity5.4.3p2里面的AssetBundle打包流程

unity5.4.3p2里面的AssetBundle打包流程&#xff0c;相比之前unity4.x的打包简单了许多&#xff0c;Unity4.X中打包的时候需要自己去管理依赖关系&#xff0c;各种BuildPipeline.PushAssetDependencies()和BuildPipeline.PopAssetDependencies()&#xff0c;一不小心手一抖&…

静态查找表的实现

#ifndef SSTABLE_H #define SSTABLE_H#include <iostream> using namespace std;/************************************************************* SSTable&#xff1a;stastic search table 静态查找表的模板类实现 顺序存储结构 ************************************…

(转)javascript匿名函数

文章来源: http://hi.baidu.com/koen_li/blog/item/4b14e4fc0c9b140c08244d8c.html 匿名函数的写法 顾名思义&#xff0c;就是没有名字的函数&#xff08;⊙﹏⊙b汗&#xff09;。匿名函数通常用于javascript作用域的控制&#xff0c;可以有效的避免对全局变量的污染。常见的匿…

BZOJ3307 雨天的尾巴

题目链接&#xff1a;戳我 树上链修改->差分 每一个节点都开一个权值线段树&#xff0c;最后从下往上合并qwq 代码如下&#xff1a; #include<iostream> #include<cstring> #include<cstdio> #include<algorithm> #include<cmath> #define MA…

主成分分析(PCA)原理详解 2016/12/17 · IT技术 · 主成分分析, 数学 分享到: 21 原文出处: 中科春哥 一、PCA简介 1. 相关背景 主成分分析(Principa

主成分分析&#xff08;PCA&#xff09;原理详解 2016/12/17 IT技术 主成分分析, 数学 分享到&#xff1a;21原文出处&#xff1a; 中科春哥 一、PCA简介 1. 相关背景 主成分分析&#xff08;Principal Component Analysis&#xff0c;PCA&#xff09;&#xff0c; 是一种统…

1 Hadoop简介

1.1 什么是Hadoop 分布式计算平台 优点&#xff1a; 高可靠性 高扩展性 高效性 在各节点之间动态地移动数据&#xff0c;保证各个节点的动态平衡 高容错性 数据多副本&#xff1b;重新启动失败任务 Hadoop应用&#xff1a; Yahoo 广告系统Web搜索研究 Facebook 数据分…

Google Xpath Helper

Google Xpath Helper 下载方法&#xff1a; 1. 访问http://chrome-extension-downloader.com/ 2. 把https://chrome.google.com/webstore/detail/xpath-helper/hgimnogjllphhhkhlmebbmlgjoejdpjl拷贝到文本框里面&#xff0c;然后点击“Download Extention”按钮。 使用方法&am…

【Tensorflow】 Object_detection之训练PASCAL VOC数据集

参考&#xff1a;Running Locally 1、检查数据、config文件是否配置好 可参考之前博客&#xff1a; Tensorflow Object_detection之配置Training Pipeline Tensorflow Object_detection之准备数据生成TFRecord 2、训练模型 PIPELINE_CONFIG_PATH/data/zxx/models/research/date…

2 Hadoop的安装与配置

需要JDK、SSH 对于伪分布式&#xff0c;Hadoop会采取与集群相同的处理方式&#xff1a;按次序启动文件conf/slaves中记载的主机上的进程&#xff0c;只不过在伪分布式中Slave为localhost&#xff08;自身&#xff09;。 Hadoop从三个角度将主机划分为两种角色&#xff1a; 最…

局域网访问控制

访问局域网内其他机器可用如下方式&#xff1a; \\PC-name\d$\dir 或者 \\192.168.xxx.xxx\d$\dir d代表d盘 但前提是对方机器已经把本机用户设置为管理员账户转载于:https://www.cnblogs.com/jimmy-c/p/4116804.html

Unity3d 插值同步

文中大体的思路&#xff1a; A玩家 移动时&#xff0c;本机自行移动&#xff0c;并发送移动指令给服务端&#xff0c;假设移动是成功的&#xff0c;服务端同步其他客户端 B玩家&#xff0c;B玩家 中用一个队列 Queue 来装服务端来的移动指令&#xff0c;然后客户端在updata中做…

laravel数据库相关操作说明

输出原生sql: DB::table(users)->where([[name,,张三]])->toSql(); //输出sql为&#xff1a;select * from users where name?; DB::table(users)->where([[name,,张三]])->getQuery(); //输出sql为&#xff1a;select * from users where name张三; 运行原生sql查…