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嗎?
原文連結:http://tech.163.com/11/0122/10/6R0DM5B8000915BE.html