Update 8/24/17: Notification Categories and Notification Dots are now supported in OneSignal!

Today, Google announced the latest Android operating system Android O Beta which is now available to try out. Along with a host of other changes, Android O has improved how Android handles and displays notifications in two significant ways.

See Unread Notifications at a Glance

The most obvious change is Notification Dots, which lets users see whether an app has unread notifications from the springboard. Functionally, these are identical to Badges in iOS, except notification dots do not show a notification count.

By long pressing on an app in the springboard, users can see a small preview of the notification. The dot remains, however, and only clears when the user launches the app or when the notification(s) have been dismissed from the notification shade.

Read more in the Android Developer Documentation (where Dots are referred to as Badges).

Control Types of Notifications

Android O also introduces the concept of Notification Channels. Channels are a category of notifications within an app that share the same behavior. These Channels let users have more fine-grained control over which types of notifications they wish to receive from apps.

Here are some examples for how channels may work:

  • A user wants updates on the Golden State Warriors basketball team, but may not want to get updates about any other team.

  • A user wants notifications related to purchases they’ve made in an app, but does not want to receive marketing notifications.

  • A user wants notifications when someone initiates a one-on-one chat with them, but does not want notifications for every message in group chats.

In the Android O presentation today, Dan Sandler of Google noted that the most requested feature(from both users and developers) is finer control of an app's notifications and Channels is Google's response to those requests.

To developers, Notification Channels offer two key benefits:

  1. If an app user finds value in some of an app's notifications but not others, users are less likely to shut off the entire Notification Channel if they are given the the ability to select which notifications they like.

  2. Android O offers easy access to the controls within an updated notifications shade UI and simple ways to specify Channels. This means that Developers do not have to spend extra effort implementing their own internal Notification Channels concept, nor build out a custom dashboard to let users control those.

With the addition of Channels, Google has deprecated the concept of priority levels on individual notifications, replacing it with ‘recommended importance’ for a given Channel. Additionally, once your app targets Android O, it must use Channels or notifications will not be delivered.

Read more in the Android Developer Documentation for Notification Channels (where Channels are referred to as Categories).

Other Changes

Google has hinted at a few other changes to notifications. This includes Notification Snoozing, which temporarily dismisses a notification for 15, 30, or 60 minutes(invoked by left swiping and tapping the clock icon). There are also changes to Media Notifications, which we'll find out more about soon.

OneSignal will be ready to support Android O at launch

OneSignal will be working hard to implement both Dots and Channels before the Android O full release, likely due in August or September. We will post an update here when these features are available. We aim to make it dead simple to implement these great new features.

In the meantime, we encourage developers to evaluate what types of notifications their apps send and how to categorize those notifications into Channels that make sense to their users. Developers can download and try out Android O in simulator or on select Android devices from Google’s Android O Developer Preview .

To learn more, check out the Google Developer Blog on What’s New in Android O, or watch the Google I/O presentation on What’s new in Notifications (on Thursday) and Notifications UX (on Friday).