Google has made Android O, the next version of Android official. Successor to Android Nougat, Android O is now available for Developers as the first preview build. The first preview build is strictly for Developers and will not be available for other Android Beta users because of possibility of lots of bugs.

Here we take a look at the major features and changes that Android O brings. We have compiled a changelog that includes both officially announced as well as unmentioned features identified by other sources after flashing the first Android O preview build.

Android O Changelog (All features & Changes)

Unmentioned Changes (First Android O Preview Build):

  • Android O allows to customize Navigation Bar on all smartphones. To activate this feature, you must unlock the System UI tuner by long-pressing the settings icon in your notification center. Check some screenshots below.
  • Android O brings LockScreen shortcut customization. This menu is again under System UI Tuner. Under the lockscreen shortcut customization menu, you would be able to pick two different shortcuts other than the default camera and dialer.
  • There is an inverted light theme in display options. Tapping on this invert option actually “inverts” the color of the notification panel and toggles. You need to restart the device for changing or inverting the theme.

Official Changelog (First Android O Preview Build):


In Android O, we’ve redesigned notifications to provide an easier and more consistent way to manage notification behavior and settings. These changes include:

  • Notification channels: Android O introduces notification channels that allow you to create a user-customizable channel for each type of notification you want to display. The user interface refers to notification channels as notification categories. To learn how to implement notification channels, see the Notification Channels guide.
  • Snoozing: Users can snooze notifications to reappear at a later time. Notifications reappear with the same level of importance they first appeared with. Apps can remove or update a snoozed notification, but updating a snoozed notification does not cause it to reappear.
  • Notification timeouts: You can now set a timeout when creating a notification using
  • Notification dismissal: The system now distinguishes whether a notification is dismissed by a user, or removed by an app.
  • Background colors: You can now set and enable a background color for a notification. You should only use this feature in notifications for ongoing tasks which are critical for a user to see at a glance.
A notification in Android O.
Inline controls for a notification in Android O.

Figure 1. The screen on the right shows inline controls for notifications in Android O.

Autofill Framework:

Account creation, login, and credit card transactions take time and are prone to errors. Users can easily get frustrated with apps that require these types of repetitive tasks.

Android O makes filling out forms, such as login and credit card forms, easier with the introduction of the Autofill Framework. Existing and new apps work with Autofill Framework after the user opts in to autofill.

You can take some steps to optimize how your app works with the framework. For more information, see Autofill Framework Overview.

Picture-in-Picture mode:

Android O allows activities to launch in picture-in-picture (PIP) mode. PIP is a special type of multi-window mode mostly used for video playback. PIP mode is already available for Android TV; Android O makes the feature available on other Android devices.

Working with fonts:

Android O introduces a new feature, Fonts in XML, which lets you use fonts as resources. This means, there is no need to bundle fonts as assets. Fonts are compiled in R file and are automatically available in the system as a resource. You can then access these fonts with the help of a new resource type, font. Android O also provides a mechanism to retrieve information related to system fonts and provide file descriptors. For more information, about using fonts as resources and retrieving system fonts, see Working with fonts.

Adaptive icons:

Android O introduces adaptive launcher icons. Adaptive icons support visual effects, and can display a variety of shapes across different device models. To learn how to create adaptive icons, see the Adaptive Icons preview feature guide.

Color management:

Android developers of imaging apps can now take advantage of new devices that have a wide-gamut color capable display. To display wide gamut images, apps will need to enable a flag in their manifest (per activity) and load bitmaps with an embedded wide color profile (AdobeRGB, Pro Photo RGB, DCI-P3, etc.).

Wi-Fi Aware:

Android O adds support for Wi-Fi Aware, which is based on the Neighbor Awareness Networking (NAN) specification. On devices with the appropriate Wi-Fi Aware hardware, apps and nearby devices can discover and communicate over Wi-Fi without an Internet access point. We’re working with our hardware partners to bring Wi-Fi Aware technology to devices as soon as possible. For information on how to integrate Wi-Fi Aware into your app, see Wi-Fi Aware.

Pinning shortcuts and widgets:

Android O introduces in-app pinning of shortcuts and widgets. In your app, you can create pinned shortcuts and widgets for supported launchers, subject to user permission.

For more information, see the Pinning Shortcuts and Widgets preview feature guide.

Fingerprint gestures:

Your accessibility service can also respond to an alternative input mechanism, directional swipes (up, down, left, and right) along a device’s fingerprint sensor. To receive callbacks about these interactions, complete the following sequence of steps:


Android O adds several new methods to the MediaPlayer class. These methods can improve your app’s handling of media playback in several ways:


  • MediaRecorder now supports the MPEG2_TS format which is useful for streaming:

Multi-display support:

Beginning with Android O, the platform offers enhanced support for multiple displays. If an activity supports multi-window mode and is running on a device with multiple displays, users can move the activity from one display to another. When an app launches an activity, the app can specify which display the activity should run on.

Note: If an activity supports multi-window mode, Android O automatically enables multi-display support for that activity. You should test your app to make sure it works adequately in a multi-display environment.

Only one activity at a time can be in the resumed state, even if the app has multiple displays. The activity with focus is in the resumed state; all other visible activities are paused, but not stopped. For more information on the activity lifecycle when several activities are visible, see Multi-Window Lifecycle.

When a user moves an activity from one display to another, the system resizes the activity and issues runtime changes as necessary. Your activity can handle the configuration change itself, or it can allow the system to destroy the process containing your activity and recreate it with the new dimensions. For more information, see Handling Configuration Changes.

App categories:

Android O allows each app to declare a category that they fit into, when relevant. These categories are used to cluster together apps of similar purpose or function when presenting them to users, such as in Data Usage, Battery Usage, or Storage Usage.

Android in the enterprise:

Android enterprise introduces many new features and APIs for devices running Android O. We’ve made the profile owner and device owner management modes more powerful, productive, and easier to provision than ever before. We’ve also enabled a whole new deployment scenario.

Some notable highlights include the following:

  • The ability to use a managed profile on a corporate-owned device.
  • An overhauled work profile featuring a user-friendly setup flow that drastically reduces setup time.
  • Enterprise management for file-based encryption.
  • Delegation of app management APIs.

To learn more about the new APIs and features for Android enterprise in Android O, see the Android in the Enterprise page.