Mobile Development 23 min read

Explore Android O: New Features, APIs, and Development Tips

This article provides a comprehensive overview of Android O's major updates—including Fluid Experiences like notification channels, picture‑in‑picture, adaptive icons, autofill, and media enhancements—along with behavior and security changes, new APIs, and practical code examples for developers.

Tencent TDS Service
Tencent TDS Service
Tencent TDS Service
Explore Android O: New Features, APIs, and Development Tips

Android O New Features Overview

Android O focuses on two main goals announced at Google I/O: Fluid Experiences and Vitals . Fluid Experiences introduce four key features—Notification Dots, Picture‑in‑Picture, Autofill Framework, and Smart Text Selection—while Vitals improve battery life, security, startup time, and stability.

Notification Changes

Android O redesigns notifications with notification channels , allowing users to manage groups of notifications uniformly. Channels are created programmatically and cannot be altered after submission, giving users control over priority, badge display, and other settings. The system also adds notification dots on app icons and a notification sleep mode with timeout and cancellation options.

Picture‑in‑Picture Mode

PIP, previously limited to Android TV, is now available on all devices. When an activity enters PIP, onPause is called, so media should be paused in onStop. Enabling PIP requires activating the System UI Tuner, navigating to Settings > System > System UI Tuner > Navigation bar, and configuring the extra button to launch Activity.enterPictureInPictureMode(). The manifest must set android:supportsPictureInPicture="true".

Adaptive Icons

Android O supports adaptive icons composed of foreground and background layers (108 × 108 dp). The system masks the icon to match device shape, providing a consistent visual style across apps.

Autofill Framework

The new Autofill Framework lets the system fill login, address, and credit‑card forms. Users enable it via Settings > Apps & Notifications > Default apps > Autofill app.

XML Fonts and Downloadable Fonts

Developers can place TTF files in a font resource folder and reference them via an XML font family. Android O and Support Library 26 also allow apps to request fonts from other apps or download them at runtime.

<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
    <font android:fontStyle="normal" android:fontWeight="400" android:font="@font/lobster_regular" />
    <font android:fontStyle="italic" android:fontWeight="400" android:font="@font/lobster_italic" />
</font-family>

Pinned Shortcuts

Pinned shortcuts, introduced in 7.1.1, can be added programmatically in Android O using the new API. Long‑pressing an app icon shows a shortcut menu; dragging a shortcut creates a standalone icon.

TextView Auto‑sizing

TextView now supports android:autoSizeTextType="uniform" or the programmatic call setAutoSizeTextTypeWithDefaults(), allowing the text size to scale automatically based on view dimensions.

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:autoSizeTextType="uniform" />

Media Enhancements

New classes such as VolumeShaper and AudioFocusRequest improve audio handling. Media components now expose getMetrics() methods, and MediaRecorder supports MPEG2‑TS streaming. LDAC Bluetooth audio codec (up to 990 kbps) is available on Sony devices.

Other Features

Support for wide‑color gamut and larger screen aspect ratios.

Multi‑display support.

EmojiCompat for newer emojis on older devices.

Smart Text Selection for quick actions on copied data.

Behavior Changes in Android O

Background Execution Limits

When an app is cached (no foreground activity or service), the system revokes wake locks and restricts background services. Implicit broadcast receivers are largely disabled for target API 26+.

Security

SSLv3 is removed.

WebView runs in a separate process.

HttpsURLConnection no longer falls back to older TLS versions.

SECCOMP filters restrict system calls.

Network and HTTP(S) Changes

OPTIONS requests now include Content‑Length: 0, URL handling is stricter, and proxy selector behavior has changed.

Permissions

Permission granting is now limited to explicitly requested permissions; granting one permission in a group no longer auto‑grants the others.

Media Changes

AudioTrack may use deep buffers.

Audio stream types are now only for volume control.

Active media streams are muted during phone calls.

AudioAttributes replace older stream‑type APIs.

Native Libraries

Writable and executable segments are now mutually exclusive; libraries containing both will be rejected.

Other

ContentProvider pagination and refresh methods.

JobScheduler improvements.

AbstractCollection methods now consistently throw NullPointerException.

Locale and internationalization updates.

Bluetooth ScanRecord byte‑length changes.

Input and navigation behavior updates.

API Changes in Android O

New WebView APIs

Developers can query the current WebView version and enable Safe Browsing via manifest metadata.

PackageInfo webViewPackageInfo = WebView.getCurrentWebViewPackage();
Log.d("MY_APP_TAG", "WebView version: " + webViewPackageInfo.versionName);
<manifest>
    <meta-data android:name="android.webkit.WebView.EnableSafeBrowsing"
               android:value="true" />
    ...
</manifest>

findViewById Generic Return Type

Now returns <T extends View>, eliminating the need for explicit casts.

Unified Margins and Padding

New XML attributes such as layout_marginVertical, layout_marginHorizontal, paddingVertical, and paddingHorizontal simplify margin and padding definitions.

AnimationSet Enhancements

AnimationSet now supports seeking to a specific point and reverse playback, reducing the need for duplicate animations.

Alert Windows

Legacy window types (TYPE_PHONE, TYPE_PRIORITY_PHONE, etc.) are deprecated. Apps must use TYPE_APPLICATION_OVERLAY, which appears below system UI elements and can be managed by the user.

AndroidPicture-in-Picturebackground executionAdaptive IconsAndroid OAutofillNotification Channels
Tencent TDS Service
Written by

Tencent TDS Service

TDS Service offers client and web front‑end developers and operators an intelligent low‑code platform, cross‑platform development framework, universal release platform, runtime container engine, monitoring and analysis platform, and a security‑privacy compliance suite.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.