What does that Android use OpenJDK instead of “its problematic version of Java”?

Android use OpenJDK
Image Source: Google Image

The fact that Google has decided to migrate part of the implementation of Java that they created “based on Oracle”, and has given them so much trouble (especially at the legal level), is a clear event. The news has jumped in the wake of the track found in a commit in the source code of the future new version of Android N. Changes will see in the coming months.

The Android community has been launched to appreciate this fact, developers and passionate users of the operating system of Google. Perhaps it is a matter more of the type developer, but we will treat it from different angles. The holder with what many have stayed has been obviously this will ease the dispute between Oracle and Google, but there is more.

What part of Android are we talking?

Android involves incorporating openjdk interesting changes, nothing trivial in the core part of android. That is, the core library and runtime…

When we talk about Android and Java, it seems to have always shied away from such language .Android emerged as an evolution, relatively speaking, of what until now was doing with Java on mobile devices: the J2ME applications. Do you remember any of them in your Nokia of the time? Android emerged as something totally new. The aim was to create a powerful operating system using and adapting specific runtime for mobile devices using what could (and leave) on J2SE.

Clearly, this had to use the part Open Source platform, so Apache Harmony was the ideal tool to create the framework of Android, its Core library and virtual machine. At that time, the project was best fought by a free implementation of Java standard relying on the community. OpenJDK not yet exist.

Of Apache Harmony arose Dalvik, the virtual machine that runs Android, and subsequently ART from Android 4.4. Thus, ** Dalvik is not 100% Java SE ** or incorporate Java libraries 2ME, AWT or Swing, for instance.

You maybe interested to read another article on LifeStyleQA: Apple, Google and Samsung lead the ranking of the most successful technology brands in the world

Thus, incorporating OpenJDK on Android involves interesting changes, nothing trivial in the core part of Android. That is, the Core Library and the virtual machine.This today, for example, limit the Java version supported: currently Java 7.

What are the reasons?

The main reason is purely technical: android had become obsolete compared to the current java…

Perhaps the first thing that came to mind after hearing the news has been the legal dispute between Oracle and Google. Could it be that Google finally take the initiative to remove traces of the fortunate owner of Oracle code? Perhaps that will relieve disputes but today is not a compelling reason.

Oracle has fought in court since 2010 against Google and its operating system. A soap opera that takes years occupying part of the social gatherings on Java and Oracle. With different rulings in favor and against. The truth, as already commented from VentureBeat step back would not do any favors Java, assuming that the APIs have clear intellectual property of Oracle. Still, today sincere Java is Oracle.

Out of all those more typical of lawyers legal disputes, I opted more for the natural evolution of technology.

The Android is Java that has not fully compatible with the latest versions. The fact that only is supported Java 7 prevents developers can use some interesting functionality in its developments, as well as performance improvements in Android runtime environment, which would benefit ART.

Building on the premise of improving the technical platform undoubtedly the future of OpenJDK appears quite attractive on mobile devices. Already it announced in last Java ONE when Oracle gave its plans for Java and platform. Theirs was a proposal to carry the JDK to mobile platforms like Android, iOS or Windows Phone. Performance improvements and, of course, adapted to the nature of the devices (battery, processors, etc…). With this will enable Java in September is available almost with the launch of the new version on 64 – bit architectures.

What are the implications for users and developers?

The future of OpenJdk is focused on mobile devices. Developers will be the main beneficiaries. If plans do not fail, see android java 9…

This change in the internal code of Android has implications primarily for developers.

You maybe interested to read another article on LifeStyleQA: Microsoft is putting together a brutal ecosystem in Android and iOS

As discussed earlier, Android needs to take the lead of Java. Today it is one of the biggest drivers of language use. It is already known that by necessity and while many look for alternatives in Dart, Scala or Kotlin, remains the official language supported.

Android codebase migrate to OpenJDK is a clear benefit to Java and strengthens against other solutions. With this change, we can move from Java 7 to not only Java 8 but to have Java 9 equivalently to other platforms. Of course, remember that change will come in Android N, so we still have to see how we can make compatibility with earlier versions.

For users we can point out that this will lead to virtually complete security better performance of its peculiar virtual machine Android. The future development of ART (Android Runtime) will OpenJDK improvements with Android architectures for better byte code compilation, something that had become outdated with the initial project of Harmony.

Anxious wait to early versions of Android N to see both improvements in developer tools as announcements internal performance of Android with new vitamin based on OpenJDK Android Core.

Be the first to comment

Leave a Reply

Your email address will not be published.