关于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吗?

Via ZDNet Blog
Pic via She said I need a goal

文章转载自:http://www.guao.hk/posts/android-copycat-code-detail.html

更多相关文章

  1. Android(安卓)SDK Manager无法更新的解决
  2. Android(安卓)studio 提取文件指定字符串
  3. Android(安卓)tips2
  4. Android支持横行滚动的ListView控件
  5. [Android] 无法创建项目问题解决
  6. WebView显示网页
  7. android 开发中判断网络是否连接的代码
  8. Android(安卓)http协议实现文件下载
  9. NPM 和webpack 的基础使用

随机推荐

  1. [mark]Android aapt工具
  2. android全格式多媒体播放器(一:ffmpeg移植)
  3. 与Android的系统打交道
  4. Android平台上读写NFC标签
  5. 1.1.4 Android系统架构
  6. Android(安卓)SD Mount
  7. Android裁剪图片总结
  8. 解决Glide4.0和圆角裁剪CenterCrop冲突
  9. android webview 使用js加载json文件失败
  10. Android下相机的调用