# Android 16

Android 16 is the upcoming major release of Android. The first developer preview was released on November 19, 2024. The first beta was released on January 23, 2025. Google expects the final version to be released in the second quarter of 2025.

## History

Android 16 is internally codenamed "Baklava". This naming choice marks a departure from the traditional alphabetical order of dessert-themed codenames which had been a hallmark of earlier Android versions. The shift to "Baklava" reflect Google's recent changes in its development approach, particularly its "Trunk Stable Project", which streamlined build processes and naming conventions starting with Android 14.
The first developer preview (also known as DP1) for Android 16 was released on 19 November 2024. A second developer preview was released on 18 December 2024. The first beta was released on 23 January 2025, with the second beta releasing shortly after on 13 February 2025. The third beta, released on March 13, 2025, marked the platform's stability milestone.

## Features

The official release notes state that the following features will be introduced in Android 16:

### Linux terminal

In Android 16, Google expanded the Linux Terminal feature, which was initially introduced in Android 15 QPR2 beta, allowing users to run Linux applications within a virtual machine on their devices. This feature utilizes the Android Virtualization Framework (AVF) to create a Debian-based environment where users can execute Linux commands and graphical applications. The guest operating system is fully isolated by the hypervisor (KVM or gunyah) and runs its own Linux kernel. Notably, it supports running classic software like Doom, showcasing its capability to handle full desktop applications. While still in development, this enhancement brings Android closer to a desktop-like experience, offering greater flexibility for developers and power users.

### Embedded photo picker

The Android photo picker now includes support for cloud-based media services like Google Photos. Users can seamlessly select photos stored in their cloud accounts, eliminating the need to switch between apps. Additionally, the picker integrates cloud albums alongside local content. The embedded picker can now respond to configuration changes like the screen orientation or theme changing, can hide the overflow menu and preview features, and includes the selection bar and snack bar, and can be expanded or collapsed. Additionally, the picker now includes search functionality, enabling users to search for specific photos and videos within their local and cloud storage.

### Health records

Android 16 introduces enhanced functionality in Health Connect, allowing apps to access and manage medical data through a new set of APIs. The initial developer preview includes support for writing medical records in Fast Healthcare Interoperability Resources(FHIR) format, a standardized method for managing electronic health records across different healthcare systems. This feature currently focuses on immunization records, with plans to expand support for lab results, medications, and more. Apps can utilize permissions such as android.permission.health.READ_MEDICAL_DATA_IMMUNIZATION and android.permission.health.WRITE_MEDICAL_DATA to interact with this data, with explicit user consent required.

### Privacy Sandbox on Android

This feature limits tracking mechanisms by utilizing anonymized data and local processing to deliver personalized content without compromising user privacy. This advancement ensures compliance with evolving data regulations while maintaining robust support for advertising ecosystems.

### Audio sharing

Android 16 utilizes Bluetooth LE Audio's Auracast technology. This allows users to stream audio to multiple Bluetooth devices simultaneously, such as headphones or speakers, without complex pairing processes. To use this feature, both the source device and receiving devices must support Bluetooth LE Audio.

### Notification cooldown

The notification cooldown feature in Android 16 aims to reduce distractions from rapid notification bursts. When multiple notifications are received in quick succession, this feature temporarily lowers the notification sound and minimizes alerts for up to two minutes. This adjustment does not affect priority notifications like calls or alarms, allowing users to maintain focus while still receiving critical updates. The feature is part of Android 16's broader efforts to enhance user experience through thoughtful notification management.

### Adaptive apps

To ensure seamless functionality across various devices and screen sizes, Android 16 is removing the ability for apps to restrict screen orientation and resizability on large screens. This change encourages developers to create adaptive apps that adjust fluidly to different display dimensions and orientations. Initially, in 2025, this will affect apps targeting API level 36 on devices with screens wider than 600dp, with an opt-out option available. By 2026, the policy will extend to apps targeting API level 37 (Android 17), eliminating the opt-out provision.

### Live Updates

Android 16 introduces "Live Updates," a new class of notifications designed to help users monitor and quickly access important ongoing activities. The new ProgressStyle notification template provides a consistent user experience for Live Updates, helping developers build for progress-centric user journeys such as rideshare, delivery, and navigation. It includes support for custom icons for start, end, and current progress tracking, segments and points, user journey states, milestones, and more.

### APV codec support

Android 16 introduces support for the Advanced Professional Video (APV) codec, designed for professional-level high-quality video recording and post-production. The APV codec standard offers features such as YUV 422 color sampling, 10-bit encoding, and target bitrates of up to 2 Gbit/s. A reference implementation is provided through the OpenAPV project.

### Vertical text rendering

To better support languages that utilize vertical writing systems, such as Japanese, Android 16 adds low-level support for rendering and measuring text vertically. A new flag, VERTICAL_TEXT_FLAG, has been added to the Paint class. When this flag is set, Paint's text measurement APIs will report vertical advances instead of horizontal ones, and Canvas will draw text vertically.

## Development

The first developer preview of Android 16 was released on November 19, 2024. A second developer preview was released on December 18, 2024. The first beta was released on January 23, 2025. The final stable version of Android 16 is scheduled for release in the second quarter of 2025.
Unlike previous versions, Android 16 will be released earlier in the year. Notably, Android 16 will have two separate SDK releases. The first SDK will include behaviour changes, along with new APIs and features, while the second SDK will focus primarily on the introduction of new APIs and features. The first SDK is expected to be released in March 2025 along with the 3rd beta version of Android 16, while the second SDK is expected to be released in the fourth quarter of 2025. Google has stated that this change is part of their ongoing effort to accelerate innovation in apps and devices.
Android 16 release timeline :
| Timeline | Build | Type |
| November 19, 2024 | Developer Preview 1 | Early baseline build focused on developer feedback, with some new features, APIs, and behavior changes. |
| December 18, 2024 | Developer Preview 2 | Incremental update with additional features, APIs, and behavior changes. |
| January 23, 2025 | Beta 1 | Initial beta-quality release, over-the-air update to early adopters who enroll in Android Beta. |
| February 13, 2025 | Beta 2 | Incremental Beta-quality release. |
| Platform Stability |||
| March 13, 2025 | Beta 3 | First platform stability milestone including final APIs and behaviors. Play publishing also opens. |
| April / May 2025 | Beta 4 | Near-final builds for final testing. |
| June 2025 | Final release | Android 16 release to AOSP and ecosystem. |
| Source: |||