πŸ’‘ Now in Beta 1

android 17 changes

Google dropped the first Android 17 beta on February 13, bringing large-screen enforcement, runtime improvements, and tighter security defaults.

Here’s the TL;DR.

πŸ–₯️ Large Screens Are Now Mandatory Link to heading

Apps targeting API 37 on devices β‰₯600dp can no longer opt out of resizing or orientation changes. screenOrientation, resizeableActivity, minAspectRatio, and maxAspectRatio are all ignored on large screens. Games and sub-600dp devices are exempt.

Also: activities no longer restart by default for keyboard/navigation/touchscreen config changes. Use the new android:recreateOnConfigChanges attribute to opt back in if needed.

⚑ Performance Wins Link to heading

  • Lock-free MessageQueue reduces missed frames on the main thread.
  • Generational GC in ART prioritizes cheap young-generation collections.
  • New ProfilingManager triggers: COLD_START, OOM, and KILL_EXCESSIVE_CPU_USAGE.
  • Custom notification views now have strict size limits to cut memory usage.

πŸŽ₯ Media & Camera Link to heading

  • Dynamic camera sessions β€” switch use cases (photo ↔ video) without closing the session via updateOutputConfigurations().
  • Constant quality video β€” MediaRecorder.setVideoEncodingQuality() adds CQ mode.
  • Background audio hardening β€” audio playback, focus, and volume changes silently fail if the app isn’t in a valid lifecycle state.
  • VVC (H.266) codec support added platform-wide.

πŸ”’ Security Link to heading

  • android:usesCleartextTraffic is deprecated. SDK 37+ apps block cleartext by default β€” migrate to Network Security Configuration.
  • HPKE hybrid cryptography gets a public Service Provider Interface.

πŸ“‘ Connectivity Link to heading

Companion Device Manager adds Medical Device and Fitness Tracker profiles, plus a unified permission dialog via setExtraPermissions() to reduce pairing prompts.