AndroidDevloops

Subtitle

 Android "O"

Android "O" is the working title of an upcoming release of the Android mobile operating system. It was first released as an alpha quality developer preview on March 21, 2017.

On March 21, 2017, Google released the first developer preview of Android "O",available for the Nexus 5X, Nexus 6P, Nexus Player, Pixel C, and Pixel smartphone devices.Google will release a total of four developer previews, with the second preview coming in May, the third in June, and the fourth in July, with a final, official release scheduled for the third quarter of 2017. On its Program Overview pages, Google states that the first developer preview is considered alpha quality, with the upcoming second preview considered beta quality

Android O is upon us! Well, not really. But the first developer preview has been released and we're starting to uncover what Google has been doing with Android for the past year and what to expect when it's released.

Google says to expect the full version in the fall of 2017 (likely with a Pixel 2 that runs it), but we should see a major update and a new preview version in mid-May right around the time Google I/O 2017 is happening. Our bet is that we will also see a proper beta program release then, but Google hasn't said as much.

In the meantime, we'll keep this page updated as the best place to find everything you need to know about Android O!

Features

User experience

Notifications can be snoozed, and batched into topic-based groups known as "channels". Android "O" contains integrated support for picture-in-picture modes.[9][10] Adding a custom ringtone, alarm or notification sound is simplified.

Platform.

Android "O" will add support for Neighborhood Aware Networking (NAN) for Wi-Fi based on Wi-Fi Aware,[13] wide color gamuts in apps, an API for autofillers, multiprocess and Google Safe Browsing support for WebViews, an API to allow system-level integration for VoIP apps, and launching activities on remote displays.Android Runtime (ART) features performance improvements. Android "O" contains additional limits on apps' background activities in order to improve battery life. Apps can specify "adaptive icons" for differently-shaped containers specified by themes (such as circles, squares, and squircles).

What's new in Android O?

Background limits

Starting with Android 7.0, Android can restrict certain activities an application wants to do while it's in the background. Android O builds on this beginning and places top priority on saving power and improving battery life without the user (that's us!) having to do anything or install anything,

New limits on implicit broadcasts (sending "signals" for other apps or activities to act upon), background services (activities of an app that continue to run when it's not on the screen) and location updates (checking to see where you are using Android's location services) are automatic. This means it's easier to build apps that don't have an impact on battery life and the user doesn't have to manage anything.


Notification channels

Android N brought a new framework for notifications and ways for developers to use it so we get more information in a space where real estate is at a premium.

With Android O Google is introducing new Notification channels: grouping notifications together by their type. Notifications are still managed by the app that delivers them, but users can control how things are displayed on a per-channel basis. This way we can decide things like how a news app notifies us or a music player shows a persistent notification. Notification channels is a new way for us to control the rich notifications that Android apps bring to us.


Autofill APIs

Platform support for autofill means better security and a powerful way for an application to store repetitive information.

With the new Autofill API, a user will be able to choose a source for autofill data, and applications that need to store and retrieve this sort of data no longer will need to act as an Accessibility service. An app like a password manager can bundle its own activity for using the autofill API and we can choose it when we need it much like choosing a new keyboard. An app could also be built that acts as a global storage for autofill data without being associated with any one particular program.


Font resources in XML

Android O promotes fonts to a full resource type.

This means that fonts can be defined the same way colors and other resources are in application layouts using XML, and developers will have more control over the fonts and style they use. This might mean we can have apps with their own custom fonts without any complicated procedures by developer or users.


Adaptive icons

The Google Pixel Launcher brought adaptive icons, and now Android supports them systemwide and natively.

Options can be given for different shaped masks that define the outside border (think squircles) and icons can be animated. Adaptive icons will be supported in the launcher, shortcuts, device Settings, sharing dialogs, and the app overview screen.


Wide-gamut color for apps

Developers building applications for Android O on devices that support wide-gamut color can now leverage those displays.

Apps like photo editors and image viewers can make use of this, and the developers simply need to enable a setting letting the system know the app is wide-gamut color aware and embed a wide color profile. Some of the support profiles are AdobeRGB, Pro Photo RGB, and DCI-P3.


Connectivity

Android O brings some changes to the way our devices communicate with other devices. Welcome changes include:

  • High-quality Bluetooth audio through the Sony LDAC codec. Your favorite songs will sound even better through Bluetooth connections.
  • NAN (Neighborhood Aware Networking) connectivity using the Wi-Fi Aware specification. Devices with supported hardware can communicate with each other using Wi-Fi without a central access point.
  • Telecom framework introduces new ways for third-party calling apps to work with each other and with your carrier's special features. New APIs now support apps that don't need to use the universal system phone app to display calling information and this data can be displayed and controlled over Bluetooth.

AAudio API for Pro Audio

The new AAudio API was built for applications that need a high-performance and low-latency audio path. Audio data can be read and written via normal streams and the AAudio API handles the routing and latency.

The first versions of the AAudio APIs are not yet complete but are a great way for developers who need these features to provide feedback. We want the people building an equivalent of GarageBand for Android to have some say in how the new features work!


WebView enhancements

Android O enables the multiprocess mode for WebView components from Nougat as the default and adds an API so that developers can handle their own errors and crashes.

This makes applications that use web development languages better stability and security, and users will benefit if developers enable Google Safe Browsing for remote URLs.


Java 8 APIs and runtime optimizations

Android O supports new Java Language APIs, including the new java.time API introduced with the latest version of Java 8. Optimization for the new runtimes is also included for better performance and stability in apps designed for Android O.

It's important to remember that early builds of Android O are designed for app developers to get a head start and aren't really consumer focused. That means the features introduced during any preview period are subject to change, get better, break or even be removed. We'll keep this page updated as we see more from Google about Android O!