Skip to main content

Google wins decade-long battle against Oracle over Java on Android

Android 11 Hero
Android 11 Hero (Image credit: Joe Maring / Android Central)

What you need to know

  • The Supreme Court has ruled in favor of Google in its long-time battle against Oracle.
  • Oracle sued Google for using its Java code in earlier versions of Android.
  • Google has maintained that it was "fair use" and that APIs aren't subject to standard copyright protections.

Google has just secured a major win for Android. The company has been locked in a decade-long battle with Oracle over its use of Java code in earlier Android versions. Oracle sued Google after purchasing Sun Microsystems, which developed the Java platform. Oracle claimed that Google stole its property when it copied code based on Java APIs to develop Android and attract developers, seeking almost $9 billion in damages.

Meanwhile, Google has maintained that the use of nearly 12,000 Java code lines was fair use and that software APIs aren't subject to the standard copyright protection. Google's SVP of Global Affairs, Kent Walker, told Axios that Oracle's suit "would introduce new friction for interoperability," describing how APIs allow the software to be used to connect to other programs and devices. As our Jerry Hildenbrand stated last year when he explained the confusing Oracle v. Google battle, Oracle's lawsuit would more or less hinder innovation and restrict programs from working with each other.

After much back and forth in lower courts battles, the Supreme Court finally took Google's side with its ruling on Monday:

Google's copying of the Java SE API, which included only those lines of code that were needed to allow programmers to put their accrued talents to work in a new and transformative program, was a fair use of that material as a matter of law.

The Supreme court found that Google's own "reimplementation" of the code that was used in the best Android phones was necessary to allow programmers to work within different computing environments while keeping them interoperable. The ruling reads that "as part of an interface, the copied lines are inherently bound together with uncopyrightable ideas....and the creation of new creative expression." Furthermore, the code in question only accounted for about 0.4 of the API at issue and thus "should be viewed as a small part of the considerably greater whole."

Dorian Daley, Oracle's executive vice president and general counsel, expressed his disappointment in a statement posted to the company's website:

They stole Java and spent a decade litigating as only a monopolist can. This behavior is exactly why regulatory authorities around the world and in the United States are examining Google's business practices.

Google, meanwhile, is celebrating the win, particularly for what it means for the future of computing:

See more
Derrek Lee
Derrek Lee

Derrek is a long-time Nokia and LG fanboy who loves astronomy, videography, and sci-fi movies. When he's not working, he's most likely working out or smoldering at the camera.

4 Comments
  • Suck it, Oracle. *Air horns*
  • That was the sound of developers everywhere exhaling.
  • As a former programmer from the days before API was an acronym, I have to say that Oracle has titanium gonads. Before languages supported subroutines the way files were defined meant that some things had to be the same from one program to another. The compiler specs and the manufacturer specs meant that certain things had to be defined by the programmer identically every time the file was used. Some were generic like the encoding scheme, and some were specific like actual file name, but the size and data types were fixed because the system modules that your program interfaced with had a defined parameter list. Some manufacturers and compilers were picky about order, but the later compilers were less so. Can you imagine if every application meant not only the application code, but the low-level IO and adder and all the rest of system and compiler built-in functions had to be done from scratch every time? If you can't re-use the basic bits and pieces that most languages specify as built-in functions, what is the point of having a language at all? You might as well pass a law that only citizens of France can speak French and citizens of Germany can speak German.
  • With Oracle being not much better than a patent troll I'm glad Google prevailed.