最新消息:网站改版咯

Google Android被指抄袭Java代码引争议

新鲜事 Yovae 1313浏览

2011年1月22日消息,据外媒报道,一位知识产权专家发现了43个实例,证明谷歌在最新版本的Android操作系统中未经允许抄袭的Java代码。

这个证据可能会驳斥谷歌在与甲骨文在有关Android侵犯Java专利和版权的法律纠纷中为自己做的辩护。

密切跟踪这个案子并且创建NoSoftwarePatents(不要软件专利)组织的Florian Mueller在博客中称,这个发现过程对于甲骨文是非常有成果的,对于谷歌来说是非常可怕的。

Mueller仔细检查了Android的代码,除了甲骨文在诉讼中提到的一个文件之外,他还发现了六个与Java文件非常相似的文件。这些文件是在Android 2.2版和2.3版中发现的。

此外,Mueller指出,在Android的代码中有三十七个文件包含一些提示,称这个代码是Sun专有的代码。

Mueller称,无论谷歌说什么,这些版权头文件都说明这些代码要根据Apache软件许可证重新授权之后才可以使用。谷歌是根据Apache许可证授权用户使用Android操作系统的。即时有人说甲骨文/Sun以后会根据GPL许可证提供这个文件(对此我还没有发现确凿的证据),那也不允许这样改变许可证。

虽然谷歌正在使用的代码与原来的Java代码稍微有一点区别,但是,Mueller发现这个区别是使用一种编译器的结果。当他使用一种名为JAD的Java反编译器并且反编译七个不同的文件的时候,他发现这个结果与Android中发现的文件几乎是一样的。

谷歌没有对Mueller的说法发表评论。

甲骨文在去年8月对谷歌提出起诉,指控谷歌Android操作系统侵犯了Java版权。甲骨文收购Sun获得了Java版权。谷歌称这个诉讼是没有根据的并且否认侵犯了版权。

如果发现谷歌侵犯了版权,谷歌就要为销售的每一部Android手机向甲骨文支付许可证费。谷歌可以把这笔费用转嫁给设备厂商。但是,这会减少Android作为免费操作系统的吸引力。

针对此事,《Android基础教程》的作者Ed Burnette在ZDNet发表博文指出,关于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吗?

转载请注明:Yovae Studio » Google Android被指抄袭Java代码引争议