Android Nougat

Android 7.0-7.1 "Nougat" (codenamed N in-development) is the seventh major version of the Android operating system. First released as a beta build on March 9, 2016, it was officially released on August 22, 2016, with Nexus devices being the first to receive the update.

Nougat introduces notable changes to the operating system and its development platform, including the ability to display multiple apps on-screen at once in a split-screen view, support for inline replies to notifications, as well as an OpenJDK-based Java environment and support for the Vulkan graphics rendering API, and "seamless" system updates on supported devices.



History


On March 9, 2016, ahead of the Google I/O developer conference, Google released the first beta of Android "N" as part of a new "Android Beta Program" intended for testing by developers and enthusiasts before official release "this summer". The developer preview builds were compatible with only current Google Nexus devices; the 5X, 6P, 6, 9, Pixel C, and Nexus Player. The "Android Beta Program" that was introduced allows testers to opt-in for over-the-air updates to new beta versions as they are released.

On April 13, 2016, Android N Beta Preview 2 was released.

Google further discussed Android "N" during the I/O keynote on May 18, 2016, and unveiled its new virtual reality platform Daydream. During the conference, Beta Preview 3 was released, along with Google stating it has now gone from developer-beta to public-beta, which means anyone can try it out. Google also announced that it would hold a contest to determine the official release name of the operating system.

Beta Preview 4 was released on June 15, 2016. On June 30, 2016, Google announced that N's release name would be "Nougat"; it was also confirmed that Nougat would be version 7.0 of Android.

The final Beta Preview, 5, was released on July 18, 2016.

Features


User experience


Android Nougat introduces a split-screen display mode for phones, in which two apps can be snapped to occupy halves of the screen. An experimental multi-window mode is also available as a hidden feature, where multiple apps can appear simultaneously on the screen in overlapping windows.

The notification shade was redesigned, featuring a smaller row of icons for settings, replacing notification cards with a new "sheet" design, and allowing inline replies to notifications (this feature is implemented via existing APIs that are used for similar functionality on Android Wear). Multiple notifications from a single app can also be "bundled",and there is greater per-app control over notifications.

The "Doze" power saving mechanism introduced in Android Marshmallow was expanded to include a state activated when the device is running on battery and the screen has been off for a period of time, but is not stationary. In this state, network activity is restricted, and apps are granted "maintenance windows" in which they can access the network and perform background tasks. As in Marshmallow, the full Doze state is activated if the device is stationary with its screen off for a period of time. A new "Data Saver" mode restricts background mobile data usage, and can trigger internal functions in apps that are designed to reduce bandwidth usage, such as capping the quality of streaming media.

Platform


In December 2015, Google announced that Android Nougat would switch its JRE (Java Runtime Environment) from the defunct Apache Harmony to OpenJDK—the official open source implementation of the Java platform maintained by Oracle Corporation and the Java community. The Android Runtime (ART) now incorporates a profile-guided compilation system, utilizing a JIT compiler and profiling alongside its current ahead-of-time compiler to further optimize apps for a device's hardware and other conditions in the background.
Nougat introduces a system for enabling "seamless", automatic system updates, based upon and sharing some code with the implementation of similar functionality on Chrome OS. The system uses a pair of SquashFS partitions; the Android system executes from an "online" partition, while updates are applied in the background to a redundant "offline" partition. On the next boot following the installation of an update, the redundant partition is designated as active, and the device henceforth boots into the updated system. The previous system partition is kept as a backup in case of update failure, and to serve as the "offline" partition for the next update. This system removes the requirement for the device to reboot into the system recovery environment to apply the update (which prevents the device from being used until the update is complete), and also provides the ability for an update to be automatically rolled back in case of a failure. Due to the partitioning requirements of this system, existing devices will not support seamless updates. Additionally, due to the ART changes on Nougat, apps no longer need to be re-compiled upon the first boot after a system update.

Developer Preview 2 added platform support for Vulkan, the new low-level 3D rendering API to augment OpenGL ES but with higher graphics performance.

Support for the Daydream VR platform is introduced in Nougat. Features include a "VR mode" for reduced graphics latency, a "sustained performance mode" to assist developers in optimizing apps to a devices thermal profile, a new head tracking algorithm which combines the input from various device sensors, and integration of system notifications into the VR user interface.

Nougat is the first version featuring Unicode 9.0 support and comes with updated emoji plus support for emoji skin tones.

Security


In response to the Stagefright family of bugs disclosed and fixed in 2015, several changes were made to harden the media stack against future vulnerabilities. Runtime integer overflow detection was implemented, preventing the majority of Stagefright-like programming bugs from becoming vulnerabilities, in addition to helping fix and prevent such bugs. Android's monolithic MediaServer process was redesigned to better adhere to the principle of leas privilege. MediaServer is now split into several separate processes, each running in its own unprivileged sandbox, and granted only the permissions required for its task. For example, only the AudioServer can access Bluetooth, and libstagefrightnow runs within the MediaCodecService sandbox, which is only granted GPU access. Further constraints were placed on the media stack through seccomp.

Various mechanisms were enabled to reduce the possibility of malicious code being injected and/or executed inside the Linux kernel, including dividing kernel memory into logical segments for code and data, with page access permissions of read-only and no-execute as appropriate. The kernel was also restricted from directly accessing user space memory, and stronger stack protection was enabled in the GCC compiler to reduce stack smashing. To limit exposure of the kernel to potentially malicious code, perf was disabled by default, ioctl commands were restricted by SELinux, and seccomp-bpf was enabled to grant processes the ability to restrict system calls.

On devices shipping with Android Nougat, the "Verified Boot" policy (introduced partially on KitKat, and displaying notifications on startup on Marshmallow) must be strictly enforced. If system files are corrupted or otherwise modified, the operating system will only allow operation in a limited-use mode or refuse to boot at all.

Release


Android 7.0 was officially released on August 22, 2016, with the Nexus 6, Nexus 5X, Nexus 6P, Nexus 9, Nexus Player, Pixel C and General Mobile 4G as the first devices to receive the update. Updates to Nougat will be released quarterly as maintenance releases focusing on "continued refinements and polish", with the next developer preview coming in the fall of 2016. On September 6, 2016, LG announced the V20, the first smartphone to ship with Nougat pre-loaded.

Google unveiled the first-party Pixel and Pixel XL smartphones during a hardware-focused event on October 4, 2016.

Updates to existing devices will vary by manufacturer and carrier. HTC stated that it planned to begin updating the HTC 10, HTC One A9 and HTC One M9 in the fourth quarter of 2016. Sony also confirmed that it would update a range of its recent devices to Nougat. Qualcomm stated that it would not support Nougat on devices using its Snapdragon 800 and 801 system-on-chips for undisclosed reasons. Although developer preview builds of Nougat were released for the device, Sony stated that it would not upgrade the Xperia Z3 (which uses the Snapdragon 801) to the final version due to "unforseen platform limitations". It was reported that the Google Compatibility Test Suite (whose tests must be passed in order to receive official certification) specified that all devices running Nougat must support either Vulkan or OpenGL ES 3.1 graphics APIs—neither of which are supported by the device's Adreno 330 graphics core.

 Thankyou

0 comments:

Post a Comment