Android 17 features and changes list

The following table lists all documented features and behavior changes that might affect app developers. Use this list to find changes that affect you, and then click the corresponding link to read the documentation.

Category Type Name
Security Change (all apps) Block cross profile loopback traffic
Cross-profile loopback traffic is no longer permitted by default.
Security Change (all apps) Per-app keystore limits
Apps have a limit on the number of keystore keys they can create, depending on their target API level; creating more keys causes an exception.
Security Change (all apps) Restrict implicit URI grants
If Android apps initiate intents with URIs, we recommend that they explicitly preallocate all necessary URI permissions instead of relying on the system to automatically grant them.
Security Change (apps targeting 17+) Enable CT by default
In Android 16 we allowed apps to opt-in to the Certificate Transparency feature. For Android 17, we are planning to enable Certificate Transparency for all TLS connections performed by the device.
Security Change (apps targeting 17+) Safer Native DCL—C
Apps must ensure DCL modules cannot be overwritten without being detected.
Security Change (apps targeting 17+) Restrict PII fields in CP2 data view
Apps that target Android 17 or higher can't access certain PII fields in the CP2 data view.
Security Change (apps targeting 17+) Enforce strict SQL checks in CP2
For apps targeting Android 17 or higher, Contacts Provider 2 enforces strict SQL query validation when the ContactsContract.Data table is accessed without READ_CONTACTS permission.
Security New features and APIs Android Advanced Protection Mode (AAPM)
Offers Android users a powerful new set of security features.
Security New features and APIs PQC APK Signing
Adds support for APKs to be signed with a new post-quantum crypto (PQC) signing key.
Core functionality Change (all apps) App memory limits
Android 17 introduces new app memory limits based on the device's total RAM.
Core functionality Change (all apps) App memory runtime limits
The system will be more rigorous in enforcing app memory limits. Exceeding these limits can cause apps to crash.
Core functionality Change (all apps) usesClearTraffic deprecation plan
We plan to deprecate usesClearTraffic in a future release. Apps that need to make HTTP connections should migrate to using network security configuration files instead.
Core functionality Change (apps targeting 17+) New NPU feature flag
Apps that target Android 17 must declare the android.hardware.npu feature if they need to access NPUs.
Core functionality Change (apps targeting 17+) Memory restrictions for notification custom views
Android 17 (API level 37) introduces stricter memory usage checks for notifications using custom views
Core functionality Change (apps targeting 17+) Static final fields are now unmodifiable
Apps that target Android 17 or higher cannot modify static final fields. Attempting to do so causes an exception.
Core functionality Change (apps targeting 17+) New lock-free implementation of MessageQueue
Apps targeting Android 17 or higher get a new lock-free implementation of MessageQueue.
Core functionality New features and APIs New ProfilingManager triggers
Android 17 several new system triggers to ProfilingManager to help you collect in-depth data to debug performance issues.
Core functionality New features and APIs JobDebugInfo APIs
New `JobDebugInfo` APIs to help developers debug their JobScheduler jobs.
Privacy Change (all apps) Restricted message access
Most apps now cannot access end-to-end encrypted messages.
Privacy Change (apps targeting 17+) OTP protection for standard SMS messages
Non-priority apps do not have immediate access to one-time passwords (OTP) even if users have granted them SMS permission.
Privacy Change (apps targeting 17+) Local network permission required for apps targeting Android 17
Apps that target Android 17 cannot access local devices unless they have an appropriate permission in the nearby devices group. This requirement was opt-in in Android 16.
Privacy Change (apps targeting 17+) ECH (Encrypted Client Hello) enabled
For apps targeting Android 17 or higher, ECH is enabled for TLS connections.
Privacy Change (apps targeting 17+) Hiding passwords from physical devices
Device no longer shows last-typed password entered from a physical device.
Privacy New features and APIs Android contacts picker
Android 17 introduces a new contacts picker as a permission-free way to give apps access to the user's contacts.
Human input Change (all apps) Touchpads deliver relative events by default during pointer capture
Beginning with Android 17, touchpads deliver relative pointer events (like with mouse events), instead of absolute events.
User experience and system UI Change (all apps) Restoring default IME visibility after rotation
When the device is rotated or the configuration is changed, the system uses the default visibility mode to determine whether to show the IME.
User experience and system UI Change (apps targeting 17+) User-agent reduction for WebView
Beginning with Android 17, the default user-agent string for WebView is shorter.
User experience and system UI New features and APIs Dedicated Assistant volume stream
Android 17 introduces a dedicated Assistant volume stream for Assistant apps, enabling independent control from media volume. Assistant apps with access to the new MODE_ASSISTANT_CONVERSATION can enable further volume improvements - control outside of an active playback or via Bluetooth peripherals.
User experience and system UI New features and APIs MetricStyle template
Android 17 introduces the MetricStyle template to support health and fitness, timers, stopwatch, and travel use cases.
User experience and system UI New features and APIs Live Update - Semantic color API
Live Updates introduces a Semantic color API to support colors with strong associations with safety, danger, and caution.
User experience and system UI New features and APIs Handoff
Handoff allows the user to begin a task on one device then continue it onanother device.
Media Change (all apps) Background audio hardening
Apps cannot play audio or use other disruptive audio APIs unless they are visible or have a foreground service.
Media New features and APIs New BYPASS_CONCURRENT_RECORD_AUDIO_RESTRICTION permission to capture sensitive audio
Introduces new BYPASS_CONCURRENT_RECORD_AUDIO_RESTRICTION permission for concurrent audio capture during calls and other sensitive audio use cases.
Connectivity Change (all apps) Autonomous re-pairing for Bluetooth bond losses
The system will automatically re-establish Bluetooth bonds in the background after a bond loss occurs, eliminating the need for users to manually unpair and re-pair devices in Settings
Connectivity Change (apps targeting 17+) Consistent BluetoothSocket read() behavior for RFCOMM
Apps targeting Android 17 or higher will have the BluetoothSocket RFCOMM implementation align with the standard Java InputStream behavior.
Connectivity New features and APIs Constrained satellite networks
Focuses on enabling Android apps to function effectively over low-bandwidth satellite networks.
Accessibility Change (apps targeting 17+) Accessibility support of complex IME physical keyboard typing
By allowing IMEs to convey more text-change information through the editor to accessibility service, this feature helps screen readers deliver more consistent, natural, and reliable feedback for complex IMEs.
Device form factors Change (apps targeting 17+) Platform API changes to ignore orientation, resizability and aspect ratio constraints on large screens (sw>=600dp)
Android 16 introduced platform API changes to ignore orientation, resizability, and aspect ratio constraints on large screens (sw >= 600dp). Apps that target Android 17 will no longer be able to opt out of these changes.
Graphics New features and APIs WebGPU on Android
OpenGL ES support is moving to maintenance mode and new feature development will be done in Vulkan + WebGPU.