As Google prepares to release Android N later this year, developers and users are beginning to dig through the changes proposed for this new version of the mobile operating system. Some of the changes in N include the inclusion of an always-on VPN, the addition of direct boot mode, and the merging of two compiler types.
In Android Lollipop and earlier, the Dalvik Java runtime was at the center of Android. As of Marshmallow, Android switched to the Android Runtime (ART). The biggest difference between the two runtimes is the fact that ART is based on ahead-of-time (AOT) compilation rather than just-in-time (JIT).
(Related: Android++ is now open source)
With Android N, JIT and AOT can both be used. Previously, the switch to AOT meant that updates and installations would take longer to execute, but with Android N, JIT can be used instead. The result should be faster installs and the elimination of the reoptimization step after an OS update takes place. Previously, all Android apps on a phone would need to be reoptimized after an OS update.
Other additions in Android N include a quick-settings API. This will allow users to customize their quick-settings bar, and to give developers the option of making their own settings bar tiles to allow users to configure their applications.
The new data saver is designed to help users who have constrained wireless bandwidth requirements. The data saver allows users to adjust their data usage according to their needs.
Finally, the new direct boot mode allows apps to be run when the device is not entirely ready. Just as an Android phone can pop up the emergency number dial pad when locked, developers will be able to tag some of their apps’ features to work in this locked phone mode. This means alarms can still trigger, and functions that require a full phone unlock can still be performed in an emergency situation, such as after a phone crashes.
Direct boot provides access to a small set of data on the phone in an unencrypted fashion, allowing that data to be accessed without needing to unlock the phone. This could cause security issues for some users, but it will also allow developers to create applications that can be used in an emergency situation.