On a broader note, Android releases can be bifurcated into categories: ‘Overhauls’ and ‘Improvements’. Every ‘overhaul’ is followed by a ‘improvement’ release and vice a versa. Android Lollipop was an overhaul while Android Marshmallow was improvement over it.

android oreo

Likewise, Android Oreo is more of an improvement over Android Nougat although Oreo brings a lot of cosmetic and under-the-hood changes. The biggest takeaways are Picture-in-Picture, Notification Channels, Autofill, and Project Treble.

In addition, there are tons of minor changes and under-the-hood changes that’ll make the mobile OS boot faster, return a better battery life and receive faster updates.

I will discuss every of features. Starting with features that are being introduced to Android with Oreo and weren’t available before.

Picture in Picture (PIP) mode

Android Oreo allows app activities to launch in PIP mode. Google introduced ‘Split Screen’ with Nougat. With Oreo, it has taken the multitasking capabilities of Android devices to a whole new level.

Android Oreo will keep showing the content even when a user has switched to a different app. A YouTube video or a Skype call will continue to play on the right bottom of the screen. The user can click the PIP window to switch to full screen.

Developers note

An app in Android Oreo should not pause playback in its onPause() handler but on onStop(), and resume playback in onStart().To use PIP mode, set android:supportsPictureInPicture to true and android:resizeableActivity to false.

Notification channel

Android Oreo lets developers channel notifications their app sends to their users. Up till now, notification in Android were channelized as per the app they belong. That is Gmail and WhatsApp notifications will remain in their respective windows in the notification pane.


An Android app sends all types of notification to the device. Twitter for Android, for example, sends three types of notification: Direct Messages, New Followers, and Tweets from People you follow.

Importance: Urgent will make a sound and show on the screen. High makes a sound. Medium makes no sound. Low makes no sound and gives no indication that it’s been received.

Sound: Set any supported sound as the notification tone for the channel.

Lights: Whether the notification should trigger a hardware notification light.

Vibration: Whether the notification should vibrate your phone.

Show on lock screen: Decide if a notification should appear on the lock screen.

Override do not disturb: Decide if a notification should bypass any do not disturb settings for sounds.

Autofill APIs

Moreover, a user can block a channel or an app from sending notifications all together.

Developers note

Android mobile app developers can create an instance of NotificationChannel for every type of notification they need to send. Moreover, they can create NotificationChannelGroup().

Also read, update, and delete channel settings: getNotificationChannel(), createNotificationChannel() and deleteNotificationChannel().

Read also: Everything you need to know about Android O

Snooze notification

Android Oreo lets you snooze notifications just like you snooze your alarms. Available snooze ‘time’ are 5 minutes, 30 minutes, one hour and two hours. To snooze swipe right on a notification, tap the clock icon and select the time. Many a time, you have to dismiss a notification because the notification pane no more has a room for it. By snoozing, you get rid of it for the time being not permanently. This video demonstrates:

Snooze notification

Developers note

An app should work fine with snoozing notifications introduces with Android 8.0 without the need of modifying underlying code.

Notification badges and long press

A bit like iPhones, Android will show a dot over an app if it has an unseen notification. However, Google took the experience to a new level. Remember, Google introduced ‘App Shortcuts’ with Android 7.1.1–long press an app icon to access key functions within the app.

Well with Android 8.0, ‘App Shortcuts’ or the long-press-menu also shows any unseen notification pending on the app.

Notification badges and long press

Developers note

setShowBadge() method overrides the OS setting and stops notifications from a channel being reflected by a badge in an app.

Colorful notification

The latest version of android app developers to display rich media notifications: playback controls, album art and a color other than white. Google Play Music and YouTube can display notification in color.

google play music

Developers note

A developers can set a desired background color using setColor(). setColorized() enable the use of the color for a notification.

Autofill APIs

Users easily get frustrated with repetitive tasks of filling forms whenever they have to sign-up for a new service or log in to an existing. With Android Oreo, ‘autofill’ is making a comeback in mobile space. Remember, Internet Explorer?

Users can enable or disable autofill as well as change the autofill service in Settings > System > Languages & input > Advanced > Input assistance > Autofill service.


Developers note

Apps that use standard views work with the Autofill Framework out of the box. However, you can take some steps to optimize how your app works with the framework.

For more information, see Autofill Framework Overview.

Project treble

A new Android release goes through various stages before it could reach a user’s device.

Project Treble

With Project Treble, Google is re-architecting the way new android releases reaches a user’s device. Project Treble will result in easier, faster and less costly updates for Android Vendors and thus, faster updates to users.

project table2

Project Treble, subject to vendor’s approval, will be a part of every new device launched with Android O and beyond. Project Treble architecture is a part of Developer Preview of O for Pixel phones.

prject table3

The bad news (at least for developers)

With Android 6.0, Google introduced “Doze” mode. “Doze On-The-Go” enhancements were added in Android 7.0.

In Oreo, Google has put even more limitations what apps can do while they’re running in foreground. One of the key limitations is broadcast limitations. Android 8.0 apps can’t react to broadcasts that are not intended for it. Google developers are sure not gonna be happy about them.

The workaround

Android developers have to switch to Androids job scheduler, introduced in Lollipop, which manages background tasks in a way that’s not harder on the battery.


On a surface, this may seem like a safe Android release—evolution, not revolution. Oreo devices and updates will start appearing around 2018, unless you’re on Pixel or Nexus. Things may although improve around the time Android P with introduction of Project Treble with Android Oreo.

call-to-action-23-dec Oreo