Google's Android N and Beyond To Dump Oracle's Java Code


Oracle and Google aren’t exactly on the best of terms at the moment. The two have been in and out of court in a scuffle over whether Android can use Oracle’s proprietary Java code, the backbone of an insane amount of software throughout the entire internet, without asking as if it’s open-source and community licensed. Android has been using these proprietary bits of Java code since day one. Since Android is open source and the code in question is an essential cornerstone of development, the matter has been up for debate both in and out of court for a good while. As of the next Android version, however, Google has decided to settle the matter once and for all by removing the offending code and replacing it with open-source versions.

The open-source alternative to the proprietary Java APIs, or application programming interfaces, is called OpenJDK. A good bit of Android’s code has already been migrated to OpenJDK over the years, especially with the rise of ART, or Android Run Time, starting in Android 4.4 KitKat. ART replaced the aging Dalvik Virtual Machine and gave Google and developers greater control of Android on a deep level, as well as elevating performance and memory use to new heights. This allowed Google to start swapping out foundation blocks of Android, most of which were proprietary Java code belonging to Oracle. Android is mostly OpenJDK based these days, but odd blobs of core code here and there still bear Oracle’s watermark and are far too deeply integrated for an in-place update. Instead, Google has vowed to do away with those APIs entirely by the time Android N rolls around by swapping them with OpenJDK equivalents, hopefully leaving system processes mostly running as they are now.

This move will not only ensure Google stays out of potential legal hot water in regards to future Android versions, but it will also make development for both Android and its OpenJDK backend easier for the communities and Google alike. A representative for Google summed up the move, saying, “As an open-source platform, Android is built upon the collaboration of the open-source community. In our upcoming release of Android, we plan to move Android’s Java language libraries to an OpenJDK-based approach, creating a common code base for developers to build apps and services. Google has long worked with and contributed to the OpenJDK community, and we look forward to making even more contributions to the OpenJDK project in the future.”