Nexus 5 in bumper case

Why is Android switching from Dalvik to ART?

Android is set to undergo a major change that will fundamentally alter the way that apps work under the operating system.

Dalvik is the current just-in-time (JIT) runtime. It is the component of Android that is responsible for launching apps.

The fact that Dalvik is JIT-based means that the final stages of compiling an app are completed just before it is needed. Dalvik’s replacement is known as Android Runtime (ART), and by contrast it runs ahead-of-time (AOT), so apps have already been fully compiled before they are launched.

ART should allow apps to run faster, and this is likely to be the main benefit promoted by Google when the move away from Dalvik is made. Yet ART development is rumoured to have started during a patent dispute between Google and Oracle, which was centred around Dalvik.

There remains speculation that development of ART was prompted by the battle between Google and Oracle. Although Google won the original case, more recently there has been the prospect of the dispute being reignited.

For the average Android user, if everything goes to plan, the change should pass unnoticed.

The switch may present difficulties for anyone with very limited storage capacity, though. Due to apps being complied AOT, up to 200% additional space will be needed under ART.

Android will need to convert apps to be able to run in ART. Whilst this process will only have to be carried out once, in cases where users have installed a considerable number of apps, it could take a reasonable amount of time.

Providing estimates of how long the process will take is difficult, as that will depend on the amount of apps installed and the speed of the device being used. In most cases, though, it won’t prove dramatically more inconvenient than installing the average over-the-air upgrade to a new version of Android.

Developers will need to optimise their apps, but ART is being introduced softly, hopefully allowing time for bugs to be resolved. The new runtime is actually available in Android 4.4 KitKat but has to be enabled through the developer options menu.

When the switch to ART is made, it will be shipped on any new phone or tablet that runs the latest version of Android. And given the focus on lowering hardware requirements that was evident in KitKat, Google will be eager to roll out the new runtime to as many existing devices as possible.