News for hackers. Stuff that matters.
Re:Oracle v. Google: Judge leaves Oracle reeling on viabilit... by justin_hancock on Monday January 23, 2012 @11:44AM (#3500998)
Google as far as I based android on the Apache VM which was implemented using the published OpCode spec for Java. So for ripping off the OpCode/VM, actually they did something quite legitimate. From memory the Oracle claim centers on a few specific classes that they claim Google reverse engineered from the original Java source.

As for the incompatibility it was Oracle that chose to deny Apache a license for the Harmony VM, this was because they knew it was a threat to J2ME.

Re:Oracle v. Google: Judge leaves Oracle reeling on viabilit... by vetinari on Monday January 23, 2012 @01:41PM (#3501519)
Google doesn't even do that.

They are not using Apache VM. They are using their own Dalvik VM, which is not even compatible with Java VM. It uses their own opcodes.

What they use though, is Apache Harmony - the library, that is reimplementation of java.* packages.

Any Android app is compiled using using javac (or other compiler, producing class files) and then converted using Google's dex tool to be runnable by Dalvik. Android OS in unable to run untouched .class/.jar apps.

Re:Oracle v. Google: Judge leaves Oracle reeling on viabilit... by prudhvis on Tuesday January 24, 2012 @03:51AM (#3503999)
*Android OS in unable to run untouched .class/.jar apps.

Im not sure if that is correct. I have implemented a VoIP application using JAIN SIP jar files compiled with Standard JDK 1.6 that ran fine on Dalvik. This was of-course pre Android 1.0 days. Im not sure if that is the case today.

Re:Oracle v. Google: Judge leaves Oracle reeling on viabilit... by vetinari on Wednesday January 25, 2012 @03:02PM (#3511456)
I'm sure that's correct.

Sure, you can take jar file compiled using JDK's javac (actually, most android apps are compiled using JDK's javac), but you can't run it on device. You have to run it through dx tool, which combines all class and jar files and converts them into dex file. With different instructions than JVM.