Android (operating system) - Wikipedia, the free encyclopedia
See "written in".
Though I honestly don't know much about it, if it's Java enough for Wikipedia it's Java enough for me.
Unfortunately few people on this forum seem to have the knowledge to understand this, although I'm glad to see that you admit it. Now read carefully and please can no one make this misunderstanding again.
- 'Java' is a programming language. Most Android apps, and some of the Android platform are written fully or partially in Java. Java programs are compiled to Java byte code for execution, on a Java virtual machine.
- A 'Java virtual machine' runs Java byte code. Android does *not* have one of these. This is the point Ordeith and I were debating earlier, although sadly she/he has now gone quiet.
- Android has a 'Dalvik virtual machine' (to be replaced in Android L by a new runtime called ART). Dalvik byte code is typically compiled from Java byte code, although could also be generated directly.
So, to repeat - Android has a Dalvik virtual machine.
A Dalvik virtual machine does not run Java byte code, so is not a Java virtual machine.
Android does not have a Java virtual machine.
And a couple of final points for you to think about:
- Microsoft's low end Asha phones do include a Java virtual machine. Mobile Java actually runs very well on low end hardware. If you have any smart cards in your pocket right now, they may also run Java.
- Windows Phone also uses a virtual machine, in this case the .net CLR. The CLR is actually pretty similar to the Java VM, although more advanced in some respects as it was developed ten years later. Performance tests of the Java VM and the CLR tend to show fairly similar performance in most cases.
- In principle, I believe WP apps could also be written in Java (at least partially), as it was a supported language for the CLR runtime used by WP - see
J Sharp - Wikipedia, the free encyclopedia. This would actually make the relationship between WP and Java, and Android and Java rather similar. Happy to be corrected on this point by someone more knowledgeable.