The as-yet-unnamed Android N was officially announced during Google's I/O 2016 Keynote. For those fortunate enough to own a Nexus or Pixel C device, the beta release can be installed now and updates will automatically be installed as it progresses to a stable release later this summer. Google is also asking for help with naming this release on the Android website, although "Namey McNameface" has apparently been disqualified as a potential option already.
We've come to expect a new Android release alongside the annual I/O conference, but what's inside? For developers, there's three big announcements: a new JIT compiler, Vulkan support, and an updated version of Android Studio, now on version 2.2. The new JIT compiler is supposed to improve software performance and speed-up app installs. The best part is that Google suggested an up to 50% app size reduction based on this new compiler. The worst case for that figure is apps like games where graphics assets are the majority of the app content.
Spock comes home to roost in Android this year, for Vulkan is officially on the Android N plate. When developers start to program with Vulkan, their graphics code should be unified across ecosystems: desktop, console, and mobile. That unity could make for tasty benchmark comparisons across devices. Vulkan for mobile should have the biggest impact by relieving the CPU from some of the scheduling work that was required with OpenGL (the older Android graphics API). Vulkan is able to dispatch draw calls without eating up CPU cycles that OpenGL would require, an important win for power and performance on the lower-end ARM cores found on most mobile devices. Vulkan requires mobile OpenGL ES 3.1 hardware support, though, which may not be available on all low-end devices for some time to come.
The release of Android Studio 2.2, while not part of Android N, certainly brings some encouraging features that exemplify Google's push toward a low-latency Android. The new release introduces support for NDK-Build and CMake, build tools used for building C++-based apps. Non-Java apps are able to bypass the object runtime of ART and directly make native Linux system calls, the type of feature that enables low-latency applications—still an issue for some Android apps.
Android N also comes with two new multi-tasking features: picture-in-picture and split-screen support. An official split-screen feature is something Android has needed since the early days of large-screen devices like the Samsung Galaxy Note. Mobile VR may progress beyond Cardboard and Gear VR with Android N and their "Daydream ready" specification, too. You can read more in our dedicated Daydream article. This release will also support quick responses from notification windows, and the app history switcher is being overhauled with a recent applications view and the ability to dismiss all apps at once.
This Android release is getting beefed-up security features, even if it's not as fine-grained control as Privacy Guard in CyanogenMod. Instead, Android N introduces per-file encryption, media hardening, and seamless OS upgrades. Per-file encryption offers finer granularity and potentially better performance compared to block-level device encryption. While this scheme allows users to encrypt their private files without slowing down the whole OS, it doesn't prevent at-rest data leakage like full-device encryption does.
After a string of embarrassing security holes in the media framework of older Android versions, Android N now restricts codec access with SELinux permissions to reduce their ability to impact a system if they are compromised. In practice, media apps should no longer be able to take over the entire system if they're fed a malicious file. Lastly, Android N introduces seamless OS upgrades where the OS image is downloaded automatically and updated in a single step, a feature already known and loved in Chrome OS.