[IO19][Notes] What’s New in the Android OS User Interface

Tsai Rene
5 min readJun 1, 2019

--

Sharing

Updated with a new design and APIs

3 sections in share sheet
  • Greatly improved performance
  • Simplified and enhanced UI
  • More developer customization options

Provide Sharing Shortcuts
Faster for users, better ranking for you

Notification

Empower users to see your content at the right time

  • Helps organize valuable and important, but not time-sensitive notifications for users.
  • Initially configured by developers, but can be adjusted by users and System
  • System priority powered by heuristics and on-device ML

75% of users get at least one buzzing notification or noise-making notification every hour, and 15% of users get these every 10 waking minutes.

Notification Actions

Enhanced with reply and deeplink actions

  • Quick reply with suggested responses
  • Directly access related deeplinks

○ action to navigate an address
○ open a url

Bubbles

Easy access to your most important tasks

  • Enables access to a user’s most important tasks any time, anywhere in the OS
  • Expanding floating icon to see full app UI

* prioritizing communication tasks as those can bubble from a notification

Multitasking

Overview

Provide Sharing Shortcuts

Faster for users, better ranking for you

Folks like sharing straight to the person they want to over the app they want with a single tap.

  • In Q, show users up to 8 deep link targets
  • Sharing Shortcuts supersedes ChooserTargetService. Sharing Shortcuts will be ranked above all targets from ChooserTargetServices. We’ll consider and locally rank all of your Sharing Shortcuts.
  • Making Sharing Shortcuts: backcompat mechanism in AndroidX.
  • Bonus: Those published targets may also appear if you long-press ur app in Launcher.

Extend Shortcuts API
→ publish a dynamic shortcut
→ load and rank much faster than direct share

Two ChooserTargets per ChooserTargetService were considered previously
all sharing shortcuts will be considered.

Sharing shortcuts will be ranked above all targets provided by any ChooserTargetServices → update your app

Proving a Sharing Shortcut

implement shortcut api for dynamic shortcuts
  • shortcuts must be associated with an activity that has a category
  • activity must have ACTION_SEND intent filter
  • include extra metadata in manifest for backcompat ChooserTargetService
  • Documentation is available now
  • Sample Code on GitHub

Add a rich content preview

Richer content provides more context

Android Q allows users to preview what they’re sharing.
A basic preview will be shown for supported types.

For text previews, you can add a richer presentation with a thumbnail and description.

Adding a rich preview content

adding a rich preview content

Add custom targets

Encourage sharing within your app

use with care

You can include a limited number of intents and ChooserTargets that will be ranked above related suggested targets.

Please consider that every Intent and ChooserTarget added reduces the number of available suggestions.

EXTRA_CHOOSER_TARGETS
EXTRA_INITIAL_INTENTS

Update your app labels and icons

Q focuses on application icons and labels

We found users think app first before sharing.
Android Q share sheet shows application icons and labels prominently.

Activity or intent filter labels will be less prominent, icons won’t be shown. Use adaptive icons.

  • alphabetized app share targets by app name
  • targets look changed

Notification Actions

Android Q can now generate suggested actions for your notification.

Enabled by default for all messaging notifications.

Provides text replies, action for URLs, addresses, emails, flights, app deep-links, and code

Tap to Edit

Users can tap on a reply and get a chance to edit the reply before sending it.

You have to explicitly enable this feature for your app.

Configuring Notification Actions

- How to enable/disable the feature
- How to generate and set your own custom suggestions
- How to combine your custom suggestions with the system generated suggestions

Notification Actions: System generated actions & replies

Notification Actions: Customizing pt. 1 — ML Kit

use ML Kit to train your own model
  • You can add your custom replies
  • Will disable system generated actions & replies
  • Firebase tutorial

Notification Actions: Customizing pt. 2 — TextClassifier

  • Also supports message replies.
  • You can add your custom actions & replies.
  • Will disable system generated actions & replies.

Bubbles

new notification-based multitasking feature

But first, System Alert Window

  • Lots of apps are utilizing SAW to do cool things.
  • Unfortunately some apps are utilizing SAW for some less cool things.
  • Android is taking steps to limit apps’ ability to use SAW.

Bubbles

The platform alternative to System Alert Window

Bubbles is new in Q as a developer preview
- Find it in developer option
- Try Bubbles, give feedback to Google
- Bubble will be preferred path over SAW

Build a bubble

  1. Configure the activity shown in the bubble
  2. Construct BubbleMetadata and add it to your notification
  3. Send that notification

1. Configure activity in AndroidManifest.xml

2. Construct BubbleMetadata

When to use a bubble

Important things only

  • Bubbles are convenient but could be annoying if the content isn’t important to the user
  • Messaging
    Calling
    User initiated
  • Notification will only bubble if it fall into these use cases.

Policy nitty-gritty

MessageStyle && inline reply action

OR

CATEGORY_CALL && person && foreground service

OR

Your app is in foreground when the notification bubble is sent

--

--

Tsai Rene
Tsai Rene

No responses yet