Introduction

Android N has recently been officially named as Android Nougat and is introducing all kinds of exciting new features and possibilities for third party developers. The official Android N public launch date is likely coming soon, a new Developer Preview has been launched at IO 2016, being held last May.

There will be a change in linking to platform libraries, please find below more information.


New features, great possibilities

Multi-window Support

On phones and tablets running Android N, users can run two apps side-by-side or one-above-the-other in split screen mode. Users can resize the apps by dragging the divider between them.

Picture in Picture for Android TV

On Android TV devices, apps can put themselves in picture-in-picture mode, allowing them to continue showing content while the user browses or interacts with other apps.

Android TV Recording

Android N adds the ability to record and playback content from Android TV input services via new recording APIs. Building on top of existing time-shifting APIs, TV input services can control what channel data can be recorded, how recorded sessions are saved, and manage user interaction with recorded content.

Virtual Reality Support

Android N adds platform support and optimizations for a new VR Mode to let developers build high-quality mobile VR experiences for users. There are a number of performance enhancements, including access to an exclusive CPU core for VR apps. Within your apps, you can take advantage of intelligent head-tracking, and stereo notifications that work for VR. Most importantly, Android N provides for very low latency graphics.


Important Technical Changes

NDK Apps Linking to Platform Libraries

In the Android N release, applications will not be allowed to link against internal libraries. Per communication from Google, applications should not depend on- or use native libraries that are not included in the NDK, because they can and are changed/removed from one Android release to another (such as the switch from OpenSSL to BoringSSL). There are no compatibility requirements for platform libraries not included in the NDK (and so OEMs are at liberty to change/remove them on any given device).

Additionally, Android N includes namespace changes to prevent loading of non-public APIs. If you use the NDK, you should only be using public APIs from the Android platform. Using non-public APIs in the next official release of Android can cause your applications to crash.

Default Trusted Certificate Authority

By default, apps that target Android N only trust system-provided certificates and no longer trust user-added Certificate Authorities (CA). Apps targeting Android N that wish to trust user-added CAs should use the Network Security Config to specify how user CAs should be trusted.

SurfaceView

Android N brings synchronous movement to the SurfaceView class, which provides better battery performance than TextureView in certain cases: When rendering video or 3D content, apps with scrolling and animated video position use less power with SurfaceView than with TextureView.

The SurfaceView class enables more battery-efficient compositing on screen, because it is composited in dedicated hardware, separately from app window content. As a result, it makes fewer intermediate copies than TextureView.

A SurfaceView object’s content position is now updated synchronously with the containing app content. One result of this change is that simple translations or scales of a video playing in a SurfaceView no longer produce black bars alongside the view as it moves.

Starting with Android N, Google strongly recommends that you save power by using SurfaceView instead of TextureView.


Timelines

  • Developer Beta: March 9, 2016
  • Android Beta Program : May 18, 2016 (Nexus Devices)
    • (Android 7.0 N Beta Quality Release Candidate)
  • General Public Release: August – September, 2016 (Expected)

 

Found useful information in this article?

Share: