This page summarizes the major features in the Android 15 and Android 15-QPR1 releases and provides links to additional information. These feature summaries are organized according to the feature's documentation location on this site.
Architecture
Deprecation of VNDK
Android 15 deprecates VNDK. Former VNDK libraries are treated same as other vendor or product libraries. See Vendor NDK for more details.
Enable 16KB page size
Android 15 and higher have support for building Android with a 16KB page size.
For more information, see Enable 16KB page size.
Vendor overlay
Android 15 deprecates vendor overlay.
Audio
Head tracking over LE audio
Android 15 provides support for latency mode adjustments for head tracking (HT) based on whether the LE-ACL or LE-ISO transport mechanism is used. See Head tracking over LE audio.
Automotive
Android Automotive power policy
Updated the Android Automotive Power policy for Android 15 with two new system power policies: no user interaction and suspend prep.
Content for HD and DAB radio
Android 15 includes improvements to HD radio support in the broadcast radio HAL and a sample unbundled radio app, which can be used as a reference for radio control implementation.
For more information, see Automotive Radio.
Camera
Android camera feature combination query API
Starting in Android 15, the Android platform provides an API to query camera feature combinations. This API lets camera clients query whether a specified combination of camera features can be supported by the device.
For more information, see API to query feature combinations.
Low Light Boost
Android 15 introduces Low Light Boost, a new auto exposure mode that can be implemented in Camera2 in the HAL, and as part of a camera extension such as night mode. Low Light Boost automatically adjusts the brightness of the Preview stream in low-light conditions.
For more information, see Low Light Boost.
Compatibility
Camera ITS updates
Android 15 introduces updates to Camera ITS tests, which include new and updated tests.
For more details, see Android 15 Camera Image Test Suite Release Notes.
CDD
Android 15 Compatibility Definition document is released.
Immersive audio test case
Starting in Android 15, a new CTS Verifier test for verifying spatial audio head tracking latency is introduced.
For more information, see the CTS Verifier for head tracking latency test.
New CTS Verifier audio tests
The following audio tests and supporting pages are added to the CTS Verifier documentation:
- CTS Verifier audio data paths tests
- CTS Verifier multichannel mixdown test
- Audio loopback latency test
Connectivity
Android Packet Filter v6
Android 15 introduces Android Packet Filter (APF) v6, which includes counters for debugging and metrics and support for packet transmission. For more information, see Android Packet Filter.
Android proprietary NCI commands
Android 15 adds new Android proprietary NFC Controller Interface (NCI) commands to interact with an NFC controller. For details on the specifications of these commands, see Android proprietary NCI commands.
Domain selection service
Android 15 adds the DomainSelectionService
system
API, which lets you implement domain selection between the IMS service and
legacy services over circuit switched networks.
For more information, see Domain Selection Service.
Subscription-level carrier service capabilities
Starting in Android 15, carriers can specify the service capabilities of the device at the subscription level. This lets app developers customize the user experience of apps based on the available capabilities for the subscription, in addition to at the device level.
For more information, see Subscription-level service capabilities.
Support for 802.11az in Wi-Fi RTT
Starting in Android 15, Wi-Fi Round Trip Time (RTT) supports the IEEE 802.11az protocol. For further information, see Wi-Fi RTT.
Watch companion device profile update
Android 15 adds the
POST_NOTIFICATIONS
permission to the watch
profile. For
details, see Companion Device
Profiles.
Cuttlefish
Snapshot and restore on Cuttlefish devices
Android 15 adds support for taking and restoring snapshots of Cuttlefish virtual devices. Taking a snapshot of a Cuttlefish device lets you save the state of the device in an image on disk. You can then restore the snapshot to bring up a Cuttlefish device to the previously saved state.
For more information, see Cuttlefish: Snapshot and restore.
NFC support for Cuttlefish devices
Android 15 introduces support for NFC on Cuttlefish devices. The Cuttlefish NFC feature uses Casimir, an external NFC device simulation tool.
For more information, see Cuttlefish: NFC.
Data
WebSQL WebSettings deprecation
Starting in Android 15, the WebSettings
methods
setDatabaseEnabled
and getDatabaseEnabled
,
which are used for WebSQL support inside WebView, are deprecated. WebSQL is
removed in Chrome and deprecated on Android WebView. These methods will become
no-ops on all Android versions after support is removed in Chromium.
The World Wide Web Consortium (W3C) encourages apps needing web databases to adopt other storage alternatives like IndexedDB.
Fonts
Support for variable fonts
Starting in Android 15, variable fonts are rendered at
runtime with better efficiency and granularity. The font configuration file
fonts.xml
is being deprecated. See
Implement custom fonts for more
information.
Graphics
HDR in Android screenshots
Android 15-QPR1 introduces a local tone-mapping algorithm for screenshots. HDR in Android screenshots tracks the progression of the HDR screenshot capability in recent Android updates.
Interaction
Head tracker HID protocol 2.0
Android 15 introduces version 2.0 of the head tracker HID protocol, which includes support for Bluetooth LE audio. For more information, see Head Tracker HID Protocol.
Neural Networks API deprecation
Starting in Android 15, the Neural Networks API (NNAPI NDK API) is deprecated. The Neural Networks HAL interface continues to be supported and NNAPI drivers aren't affected by this deprecation.
For more information, see the NNAPI Migration Guide.
Media
OEM guidance for RoI implementation
Android 15 introduces a standardized process for integrating region of interest (RoI) user configurations into the Android video encoding framework. For further information, see OEM guidance for RoI implementation.
Permissions
Platform-signed shared UID allowlist
Android 15 introduces an explicit allowlist for platform-signed nonsystem apps to join (platform-signed) shared UIDs.
For more information, see Platform-signed shared UID allowlist.
Requirements update for COMPANION_DEVICE_APP_STREAMING and COMPANION_DEVICE_NEARBY_DEVICE_STREAMING roles
Android 15 updates the Virtual Device Manager role policies to prevent misuse for fraudulent purposes.
For more information, see COMPANION_DEVICE_APP_STREAMING
and
COMPANION_DEVICE_NEARBY_DEVICE_STREAMING
on Android
Roles.
Signature permission allowlist
Android 15 introduces an explicit allowlist for platform signature permissions that are requested by nonsystem apps or newly requested by updates to system apps.
For more information, see Signature permission allowlist.
Runtime
setAdjustCompilerFilterCallback
Starting with Android 15, you can override the compiler
filter for certain packages using the setAdjustCompilerFilterCallback
API.
For more information, see Override the compiler filter for certain packages.
Security
2G toggle
Carriers can no longer hide the 2G toggle from users.
The carrier configuration key KEY_HIDE_ENABLE_2G
has been deprecated.
dusize_4k flag
Android 15 introduces the dusize_4k
flag which forces
the encryption data unit size to be 4096 bytes even when the file system block
size is not 4096 bytes.
For more information, see Internal storage.
Mobile Network Ciphering and IMSI Disclosure Transparency
Mobile network protocols up to and including 5G allow user data (including calls, SMS, data connections, and certain signaling-based metadata) to be transmitted in cleartext with encryption and integrity protection disabled.
Android 15 introduces new network and privacy settings that enable notifications for users when they connect to an insecure mobile network (no encryption or integrity protection where there is otherwise an expectation that this would be used), and their private identifiers (IMSI, IMEI, or SUCI) are exposed to the network in a manner that could potentially be used to track users.
The international mobile subscriber identity (IMSI) is a unique number used to identify every user on a certain cellular network tied to a user's SIM card. Attackers can capture this number in transit, and this is the basis for many known cellular attacks. The international mobile equipment identity (IMEI) is the unique identifier tied to a mobile device. The Subscription Concealed Identifier (SUCI) is a 5G-specific identifier.
Private space
Private space is a secure area for sensitive apps, where users can hide apps from unauthorized access. You can use private space to store sensitive apps such as banking, dating, and other personal apps that you don't want other device users to access.
For more information, see Private space.
Updates
Virtual A/B version 3
Android 15 introduces a a new version of Android virtual A/B update mechanism. This new feature introduces faster, smaller and more performant OTA updates. For more information, see Virtual A/B.
Virtualization
Enhancements to Android Virtualization Framework (AVF)
Android 15 introduces the following enhancements to Android Virtualization Framework (AVF), the framework for managing virtual machines (VMs).
Updatable VM: VMs can keep their secrets and data protected by them even across updates in their software stack. For more information, see Updatable VM.
VM remote attestation: Clients of a VM can be sure that they are communicating with the correct VM and software stack running on a trusted device. Clients can use the attestation to make sure that, for example, they only deliver a valuable machine learning model directly to their trusted VM. For more information, see VM remote attestation.
Device assignment: Peripheral devices can be fully assigned to a protected VM. Such an assigned device isn't accessible from outside of the VM, and the device itself can access only the memory that is owned by the VM. This feature can be used to run machine learning accelerators like a GPU in a protected VM, without having to send the code and data out of the VM. This feature is experimental and its availability highly depends on the capability of the hardware and the support from the chipset and device makers. For more information, see Getting started with device assignment.