Skip to content

Releases: mahozad/androidx-release-notes

2025-07-31

01 Aug 18:54

Choose a tag to compare

Room: v2.8.0-beta01

August 1, 2025

androidx.room:room-*:2.8.0-beta01 is released. Version 2.8.0-beta01 contains these commits.

Bug Fixes

  • Table and view names are now escaped properly during destructive migrations. (9e55f8, b/427095319)

Sqlite: v2.6.0-beta01

August 1, 2025

androidx.sqlite:sqlite-*:2.6.0-beta01 is released. Version 2.6.0-beta01 contains these commits.

New Features

  • androidx.sqlite now supports loading SQLite extensions by adding the addExtension method to BundledSQLiteDriver, which can be used to register extensions that SQLite should dynamically load against connections opened against that particular driver. (I64d6f, I2721b, b/430960837, b/434203987)

2025-07-30@11PM

31 Jul 02:37

Choose a tag to compare

Activity: v1.12.0-alpha05

July 30, 2025

androidx.activity:activity:1.12.0-alpha05, androidx.activity:activity-compose:1.12.0-alpha05, and androidx.activity:activity-ktx:1.12.0-alpha05 are released. Version 1.12.0-alpha05 contains these commits.

Dependency Update

Benchmark: v1.4.0

July 30, 2025

androidx.benchmark:benchmark-*:1.4.0 is released. Version 1.4.0 contains these commits.

Important changes since 1.3.0

Microbenchmark

  • Moved Gradle tasks lockClocks and unlockClocks to be on benchmark projects, instead of at the top level to respect Gradle project isolation.
  • Refactored BenchmarkRule to be built on top of coroutines, and support better yield() behavior. This should significantly reduce the risk of ANRs during benchmark runs, especially long CI runs. Note: UI Benchmarks should run with measureRepeatedOnMainThread

Macrobenchmark

  • Added workaround on API 34+ for CompilationMode.None() would have inconsistent performance due to ART's verify now partly compiling apps after first launch.
  • Experimental feature - Startup Insights can highlight certain common issues in a startup Macrobenchmark by passing MacrobenchmarkRule(..., experimentalConfig = ExperimentalConfig(StartupInsightsConfig(isEnabled = true))).
  • Added ArtMetric which can be used to detect JIT Compilation, and unoptimized class loading - both useful for validating Baseline Profile optimizations.

Baseline Profiles

  • BaselineProfileRule now collects profiles for multi-process apps.

Other Changes

  • TraceProcessor has been pulled out into its own library (androidx.benchmark:benchmark-traceprocessor) so that it can be used outside of Macrobenchmark metrics, in other cases. It can also be run on Desktop JVM by defining your own ServerLifecycleManager.

Browser: v1.9.0

July 30, 2025

androidx.browser:browser:1.9.0 is released. Version 1.9.0 contains these commits.

Compose Animation: v1.9.0-rc01

July 30, 2025

androidx.compose.animation:animation-*:1.9.0-rc01 is released. Version 1.9.0-rc01 contains these commits.

Compose Foundation: v1.9.0-rc01

July 30, 2025

androidx.compose.foundation:foundation-*:1.9.0-rc01 is released. Version 1.9.0-rc01 contains these commits.

Bug Fixes

  • TextFieldState.edit { } no longer clears the undo history. Instead it creates a standalone undo entry. If the desired behavior is to clear the undo stack after an edit call, please use TextFieldState.undoState.clearHistory(). (I12c14)

Compose Material: v1.9.0-rc01

July 30, 2025

androidx.compose.material:material-*:1.9.0-rc01 is released. Version 1.9.0-rc01 contains these commits.

Compose Material3: v1.4.0-beta01

July 30, 2025

androidx.compose.material3:material3-*:1.4.0-beta01 is released. Version 1.4.0-beta01 contains these commits.

Breaking changes

  • All public APIs tagged with ExperimentalMaterial3ExpressiveApi or ExperimentalMaterial3ComponentOverrideApi have been removed, please switch to 1.5.0-alpha to continue enjoying these features. (Ie4ae0)
  • Please expect the following stabilized pullToRefresh APIs to be renamed in the next release. (Ib6cbe)

New Features

  • Tooltip now supports custom caret shape and custom caret position (above, below, left, or right of the anchor). (Ie513c)

API Changes

  • Suspend annotation has been removed from onDismiss callback. (Ie3166)
  • DatePickerState.getDisplayedMonth(): YearMonth? and DateRangePickerState.getDisplayedMonth(): YearMonth? were updated to return non nullable value. (Ice09c, b/427952972)
  • Remove ModalWideNavigationRailDefaults, move its contents to WideNavigationRailDefaults and rename its shape related names. (Ic5e61)

Bug Fixes

  • Ensures DatePicker respects its own locale for number formatting. Previously, if DatePicker was configured for an Arabic locale, it could incorrectly render Latin digits if the device's system locale used a different numbering system. (Iccf76, b/432616196)
  • Fix a LinearProgressIndicator issue that did not render a stop indicator correctly in RTL layouts. (I0734c)
  • PrimaryScrollableTabRow and SecondaryScrollableTabRow divider now extends to the full screen size, even when tab content does not extend to the end of the screen. (Ic1e9c, b/261741384)

Compose Material3: v1.5.0-alpha01

July 30, 2025

androidx.compose.material3:material3-*:1.5.0-alpha01 is released. Version 1.5.0-alpha01 contains these commits.

New Features

  • Add more position provider for tooltips so now developers can control if tooltip is placed above, below, left, or right of the anchor. Add an API that takes in a Shape for carets, so more custom...
Read more

2025-07-30

30 Jul 18:55

Choose a tag to compare

Activity: v1.12.0-alpha05

July 30, 2025

androidx.activity:activity:1.12.0-alpha05, androidx.activity:activity-compose:1.12.0-alpha05, and androidx.activity:activity-ktx:1.12.0-alpha05 are released. Version 1.12.0-alpha05 contains these commits.

Dependency Update

Benchmark: v1.4.0

July 30, 2025

androidx.benchmark:benchmark-*:1.4.0 is released. Version 1.4.0 contains these commits.

Important changes since 1.3.0

Microbenchmark

  • Moved Gradle tasks lockClocks and unlockClocks to be on benchmark projects, instead of at the top level to respect Gradle project isolation.
  • Refactored BenchmarkRule to be built on top of coroutines, and support better yield() behavior. This should significantly reduce the risk of ANRs during benchmark runs, especially long CI runs. Note: UI Benchmarks should run with measureRepeatedOnMainThread

Macrobenchmark

  • Added workaround on API 34+ for CompilationMode.None() would have inconsistent performance due to ART's verify now partly compiling apps after first launch.
  • Experimental feature - Startup Insights can highlight certain common issues in a startup Macrobenchmark by passing MacrobenchmarkRule(..., experimentalConfig = ExperimentalConfig(StartupInsightsConfig(isEnabled = true))).
  • Added ArtMetric which can be used to detect JIT Compilation, and unoptimized class loading - both useful for validating Baseline Profile optimizations.

Baseline Profiles

  • BaselineProfileRule now collects profiles for multi-process apps.

Other Changes

  • TraceProcessor has been pulled out into its own library (androidx.benchmark:benchmark-traceprocessor) so that it can be used outside of Macrobenchmark metrics, in other cases. It can also be run on Desktop JVM by defining your own ServerLifecycleManager.

Browser: v1.9.0

July 30, 2025

androidx.browser:browser:1.9.0 is released. Version 1.9.0 contains these commits.

Compose Animation: v1.9.0-rc01

July 30, 2025

androidx.compose.animation:animation-*:1.9.0-rc01 is released. Version 1.9.0-rc01 contains these commits.

Compose Foundation: v1.9.0-rc01

July 30, 2025

androidx.compose.foundation:foundation-*:1.9.0-rc01 is released. Version 1.9.0-rc01 contains these commits.

Bug Fixes

  • TextFieldState.edit { } no longer clears the undo history. Instead it creates a standalone undo entry. If the desired behavior is to clear the undo stack after an edit call, please use TextFieldState.undoState.clearHistory(). (I12c14)

Compose Material: v1.9.0-rc01

July 30, 2025

androidx.compose.material:material-*:1.9.0-rc01 is released. Version 1.9.0-rc01 contains these commits.

Compose Material3: v1.4.0-beta01

July 30, 2025

androidx.compose.material3:material3-*:1.4.0-beta01 is released. Version 1.4.0-beta01 contains these commits.

Breaking changes

  • All public APIs tagged with ExperimentalMaterial3ExpressiveApi or ExperimentalMaterial3ComponentOverrideApi have been removed, please switch to 1.5.0-alpha to continue enjoying these features. (Ie4ae0)
  • Please expect the following stabilized pullToRefresh APIs to be renamed in the next release. (Ib6cbe)

New Features

  • Tooltip now supports custom caret shape and custom caret position (above, below, left, or right of the anchor). (Ie513c)

API Changes

  • Suspend annotation has been removed from onDismiss callback. (Ie3166)
  • DatePickerState.getDisplayedMonth(): YearMonth? and DateRangePickerState.getDisplayedMonth(): YearMonth? were updated to return non nullable value. (Ice09c, b/427952972)
  • Remove ModalWideNavigationRailDefaults, move its contents to WideNavigationRailDefaults and rename its shape related names. (Ic5e61)

Bug Fixes

  • Ensures DatePicker respects its own locale for number formatting. Previously, if DatePicker was configured for an Arabic locale, it could incorrectly render Latin digits if the device's system locale used a different numbering system. (Iccf76, b/432616196)
  • Fix a LinearProgressIndicator issue that did not render a stop indicator correctly in RTL layouts. (I0734c)
  • PrimaryScrollableTabRow and SecondaryScrollableTabRow divider now extends to the full screen size, even when tab content does not extend to the end of the screen. (Ic1e9c, b/261741384)

Compose Material3: v1.5.0-alpha01

July 30, 2025

androidx.compose.material3:material3-*:1.5.0-alpha01 is released. Version 1.5.0-alpha01 contains these commits.

New Features

  • Add more position provider for tooltips so now developers can control if tooltip is placed above, below, left, or right of the anchor. Add an API that takes in a Shape for carets, so more custom...
Read more

2025-07-24

25 Jul 18:53

Choose a tag to compare

Media3: v1.8.0-rc02

July 24, 2025

Version 1.8.0-rc02 contains these commits.

  • ExoPlayer:
    • Add getter for shuffle mode to the ExoPlayer interface (#2522).
    • More clearly throw an exception if DefaultAudioSink is accessed from multiple threads. If this happens due to a call to RendererCapabilities.getFormatSupport outside of the player, make sure to call this method on the same thread as ExoPlayer's playback thread or use a different instance than the one used for playback (#1191).
  • Audio:
    • Fix bug where AnalyticsListener.onAudioPositionAdvancing is not called when the audio playback is started very close to the end of the media.
  • Session:
    • Fix bug where connections from third-party non-privileged Media3 controllers are ignored.
    • Remove check for available commands when sending custom commands to a legacy MediaBrowserServiceCompat. This is in parity with the behavior of legacy controllers/browsers when connected to a legacy app.
    • Fix a bug that causes a player's first playback error to be incorrectly treated as a persistent custom exception. This prevents the application from recovering.
  • HLS extension:
    • Fix bug where HlsSampleStreamWrapper attempts to seek inside buffer when there are no chunks available in the buffer #2598.

2025-07-23

23 Jul 21:43

Choose a tag to compare

Annotation-Experimental: v1.5.1

July 16, 2025

androidx.annotation:annotation-experimental:1.5.1 is released. Version 1.5.1 contains these commits.

Browser: v1.9.0-rc01

July 16, 2025

androidx.browser:browser:1.9.0-rc01 is released. Version 1.9.0-rc01 contains these commits.

API Changes

  • Added 'Contextual Menu Items' for custom tabs (Iab7d0)

Bug Fixes

  • Updated JavaDocs for setOpenInBrowserButtonState for (Iae1f2)

Camera: v1.5.0-beta02

July 16, 2025

androidx.camera:camera-*:1.5.0-beta02 is released. Version 1.5.0-beta02 contains these commits.

API Changes

  • Added new APIs to set or query groups of high-quality features more intuitively and accurately as these features may not be supported as a combination across all devices. SessionConfig now contains new APIs to denote a group of features as either required or preferred. The CameraInfo.isFeatureGroupSupported API allows to know if a feature group is supported before binding a SessionConfig. SessionConfig also allows setting a listener to know which features are finally selected when a session config is bound. (Ie4d60)
  • Added new API SessoinConfig.Builder.setFrameRateRange(Range<Integer>) and CameraInfo.getSupportedFrameRateRanges(SessionConfig), enabling developers to query guaranteed supported frame rates constrained by a specific SessionConfig and then apply the frame rate on SessionConfig. (Ieacf7)
  • Introduced the new SessionConfig API, which includes a better abstraction for configuring use cases, session parameters, CameraEffect, ViewPort and etc. Binding a SessionConfig to a LifecycleOwner opens the camera session, configures it using the specified use cases and session parameters, and applies the designated CameraEffect and ViewPort. When updating a new SessionConfig to the same LifecycleOwner, you can just bind a new Sessionconfig without the need of invoking unbind or unbindAll first. (Iedfc3)
  • Added new APIs to record high-speed/slow-motion video. See HighSpeedVideoSessionConfig API for more details. (Ia16f3)

Bug Fixes

  • Fixed ImageCaptureCapabilities#getSupportedOutputFormats() API reporting RAW formats as supported in some devices which doesn't actually have RAW capability. (Ibcadb)
  • Fixed the memory leak that happens when PreviewView is used, CameraEffect is enabled or binding 4 use cases(StreamSharing) (I87468)
  • Fixed a video recording crash by AssertionError: Invalid internal audio state: IDLING. (I38d4b, b/414259796)
  • Fixed the issue when the app runs in an external display and the device is landscape, the preview in PreviewView becomes stretched or sideway (Ia917a)
  • Fixed the issue that Preview Stabilization settings are not correctly applied when the camera stream is sharing between Preview and VideoCapture.(I5430e)
  • CameraXViewfinder now properly handles surface replacement in the underlying Viewfinder. This covers scenarios such as when an EXTERNAL viewfinder on API level 28 or lower moves off screen or if a CameraXViewfinder (with any ImplementationMode) is part of moveableContentOf(). In cases where the underlying ViewfinderSurfaceSession cannot be kept alive, the CameraXViewfinder will invalidate the current CameraX SurfaceRequest, allowing CameraX to use the new Surface. (I79432)
  • Fixes an issue on Android 10/11 where the EXTERNAL CameraXViewfinder could appear stretched or incorrect due to transformation operations (like scale or translate) being applied too early. The system now waits for the Surface to be created before applying these transformations in the layout phase, ensuring correct output. (Icc77c)
  • Composable CameraXViewfinder now works correctly with Compose's Pager. This change ensures that the Composable can be successfully reset by implementing the onReset callback of AndroidView, supporting both EMBEDDED and EXTERNAL implementations. (I0d9be)
  • Fixed a lifecycle owner leak that happens when unbinding use cases from a lifecycle owner without shutting down the camera provider.

camera featurecombinationquery: v1.5.0-beta02

July 16, 2025

androidx.camera.featurecombinationquery:featurecombinationquery:1.5.0-beta02 and androidx.camera.featurecombinationquery:featurecombinationquery-play-services:1.5.0-beta02 are released. Version 1.5.0-beta02 contains these commits.

New Features

  • Play Service implementation will automatically pull in the Play Services Implementation when used.

Bug Fixes

  • Clarified restrictions when using deferred surfaces with the play store implementation.
  • Moved some initialization to the Factory constructor to give clients better control over when they want the Binder calls to happen. Updated the docs to reflect the same.

camera viewfinder: v1.5.0-beta03

July 16, 2025

androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta03, androidx.camera.viewfinder:viewfinder-core:1.5.0-beta03, and androidx.camera.viewfinder:viewfinder-view:1.5.0-beta03 are released. Version 1.5.0-beta03 contains these commits.

Bug Fixes

  • The default ImplementationMode for Viewfinder (both Compose and View-based) now intelligently selects betw...
Read more

2025-07-16

16 Jul 18:54

Choose a tag to compare

Annotation-Experimental: v1.5.1

July 16, 2025

androidx.annotation:annotation-experimental:1.5.1 is released. Version 1.5.1 contains these commits.

Browser: v1.9.0-rc01

July 16, 2025

androidx.browser:browser:1.9.0-rc01 is released. Version 1.9.0-rc01 contains these commits.

API Changes

  • Added 'Contextual Menu Items' for custom tabs (Iab7d0)

Bug Fixes

  • Updated JavaDocs for setOpenInBrowserButtonState for (Iae1f2)

Camera: v1.5.0-beta02

July 16, 2025

androidx.camera:camera-*:1.5.0-beta02 is released. Version 1.5.0-beta02 contains these commits.

API Changes

  • Added new APIs to set or query groups of high-quality features more intuitively and accurately as these features may not be supported as a combination across all devices. SessionConfig now contains new APIs to denote a group of features as either required or preferred. The CameraInfo.isFeatureGroupSupported API allows to know if a feature group is supported before binding a SessionConfig. SessionConfig also allows setting a listener to know which features are finally selected when a session config is bound. (Ie4d60)
  • Added new API SessoinConfig.Builder.setFrameRateRange(Range<Integer>) and CameraInfo.getSupportedFrameRateRanges(SessionConfig), enabling developers to query guaranteed supported frame rates constrained by a specific SessionConfig and then apply the frame rate on SessionConfig. (Ieacf7)
  • Introduced the new SessionConfig API, which includes a better abstraction for configuring use cases, session parameters, CameraEffect, ViewPort and etc. Binding a SessionConfig to a LifecycleOwner opens the camera session, configures it using the specified use cases and session parameters, and applies the designated CameraEffect and ViewPort. When updating a new SessionConfig to the same LifecycleOwner, you can just bind a new Sessionconfig without the need of invoking unbind or unbindAll first. (Iedfc3)
  • Added new APIs to record high-speed/slow-motion video. See HighSpeedVideoSessionConfig API for more details. (Ia16f3)

Bug Fixes

  • Fixed ImageCaptureCapabilities#getSupportedOutputFormats() API reporting RAW formats as supported in some devices which doesn't actually have RAW capability. (Ibcadb)
  • Fixed the memory leak that happens when PreviewView is used, CameraEffect is enabled or binding 4 use cases(StreamSharing) (I87468)
  • Fixed a video recording crash by AssertionError: Invalid internal audio state: IDLING. (I38d4b, b/414259796)
  • Fixed the issue when the app runs in an external display and the device is landscape, the preview in PreviewView becomes stretched or sideway (Ia917a)
  • Fixed the issue that Preview Stabilization settings are not correctly applied when the camera stream is sharing between Preview and VideoCapture.(I5430e)
  • CameraXViewfinder now properly handles surface replacement in the underlying Viewfinder. This covers scenarios such as when an EXTERNAL viewfinder on API level 28 or lower moves off screen or if a CameraXViewfinder (with any ImplementationMode) is part of moveableContentOf(). In cases where the underlying ViewfinderSurfaceSession cannot be kept alive, the CameraXViewfinder will invalidate the current CameraX SurfaceRequest, allowing CameraX to use the new Surface. (I79432)
  • Fixes an issue on Android 10/11 where the EXTERNAL CameraXViewfinder could appear stretched or incorrect due to transformation operations (like scale or translate) being applied too early. The system now waits for the Surface to be created before applying these transformations in the layout phase, ensuring correct output. (Icc77c)
  • Composable CameraXViewfinder now works correctly with Compose's Pager. This change ensures that the Composable can be successfully reset by implementing the onReset callback of AndroidView, supporting both EMBEDDED and EXTERNAL implementations. (I0d9be)
  • Fixed a lifecycle owner leak that happens when unbinding use cases from a lifecycle owner without shutting down the camera provider.

camera featurecombinationquery: v1.5.0-beta02

July 16, 2025

androidx.camera.featurecombinationquery:featurecombinationquery:1.5.0-beta02 and androidx.camera.featurecombinationquery:featurecombinationquery-play-services:1.5.0-beta02 are released. Version 1.5.0-beta02 contains these commits.

New Features

  • Play Service implementation will automatically pull in the Play Services Implementation when used.

Bug Fixes

  • Clarified restrictions when using deferred surfaces with the play store implementation.
  • Moved some initialization to the Factory constructor to give clients better control over when they want the Binder calls to happen. Updated the docs to reflect the same.

camera viewfinder: v1.5.0-beta03

July 16, 2025

androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta03, androidx.camera.viewfinder:viewfinder-core:1.5.0-beta03, and androidx.camera.viewfinder:viewfinder-view:1.5.0-beta03 are released. Version 1.5.0-beta03 contains these commits.

Bug Fixes

  • The default ImplementationMode for Viewfinder (both Compose and View-based) now intelligently selects betw...
Read more

2025-07-12

14 Jul 18:55

Choose a tag to compare

Core 1.7.0: Core Core-ktx 1.7.0-rc01

July 14, 2025

androidx.test:core:1.7.0-rc01 and androidx.test:core-ktx:1.7.0-rc01 are released.

Espresso 3.7.0: Espresso 3.7.0-rc01

July 14, 2025

The following artifacts were released:

  • androidx.test.espresso:espresso-accessibility:3.7.0-rc01
  • androidx.test.espresso:espresso-core:3.7.0-rc01
  • androidx.test.espresso:espresso-contrib:3.7.0-rc01
  • androidx.test.espresso:espresso-idling-resource:3.7.0-rc01
  • androidx.test.espresso:espresso-intents:3.7.0-rc01
  • androidx.test.espresso:espresso-remote:3.7.0-rc01
  • androidx.test.espresso:espresso-web:3.7.0-rc01
  • androidx.test.espresso.idling:idling-concurrent:3.7.0-rc01
  • androidx.test.espresso.idling:idling-net:3.7.0-rc01

Test:

Test:

Test:

Monitor 1.8.0: monitor 1.8.0-rc01

July 14, 2025

androidx.test:monitor:1.8.0-rc01 is released.

Orchestrator 1.6.0: orchestrator 1.6.0-rc01

July 14, 2025

androidx.test:orchestrator:1.6.0-rc01 is released.

Runner 1.7.0: runner 1.7.0-rc01

July 14, 2025

androidx.test:runner:1.7.0-rc01 is released.

Rules 1.7.0: rules 1.7.0-rc01

July 14, 2025

androidx.test:rules:1.7.0-rc01 is released.

Services 1.6.0: services 1.6.0-rc01

July 14, 2025

androidx.test.services:test-services:1.6.0-rc01 androidx.test.services:storage:1.6.0-rc01 are released.

2025-07-02

02 Jul 18:51

Choose a tag to compare

Activity: v1.12.0-alpha04

July 2, 2025

androidx.activity:activity:1.12.0-alpha04, androidx.activity:activity-compose:1.12.0-alpha04, and androidx.activity:activity-ktx:1.12.0-alpha04 are released. Version 1.12.0-alpha04 contains these commits.

Dependency Changes

AppSearch: v1.1.0

July 2, 2025

androidx.appsearch:appsearch-*:1.1.0 is released. Version 1.1.0 contains these commits.

Browser: v1.9.0-beta01

July 2, 2025

androidx.browser:browser:1.9.0-beta01 is released. Version 1.9.0-beta01 contains no changes since the previous alpha version.

Compose Animation: v1.9.0-beta02

July 2, 2025

androidx.compose.animation:animation-*:1.9.0-beta02 is released. Version 1.9.0-beta02 contains these commits.

Compose Foundation: v1.9.0-beta02

July 2, 2025

androidx.compose.foundation:foundation-*:1.9.0-beta02 is released. Version 1.9.0-beta02 contains these commits.

New Features

  • Support smart items in context menu and selection toolbar.

API Changes

  • Fixed a bug where certain hardware keyboards or TV remotes fail to move cursor in new TextFields using the directional keys, and instead switch focus to another composable. Added ComposeFoundationFlag.isTextFieldDpadNavigationFixEnabled to be able to disable this fix for the time being if it causes an undesired behavior in an irrecoverable way. (Ie1922)

Bug Fixes

  • Fix issue where sticky headers were not sticking if a pinned item was present. (I9198d, b/385006133)
  • TextObfuscationMode.RevealLastTyped now follows the system setting “TEXT_SHOW_PASSWORD”. (I41c0c)
  • Fixed a bug where BasicTextField wrongly shows a “Clipboard pasted” warning when the text toolbar opens for the first time. (I5fda2)

Compose Material: v1.9.0-beta02

July 2, 2025

androidx.compose.material:material-*:1.9.0-beta02 is released. Version 1.9.0-beta02 contains these commits.

Compose Material3: v1.4.0-alpha17

July 2, 2025

androidx.compose.material3:material3-*:1.4.0-alpha17 is released. Version 1.4.0-alpha17 contains these commits.

New Features

  • Update button group's animation to animate to 75% of the animation when clicked instead of pressed. (593942a, b/423596967)

Bug Fixes

  • Fixed an issue where a carousel item could, in some cases, exceed the large element size during layout calculations, that cut the whole widget. (I1c3d7, b/397489534)
  • Fixed jumping past beforeContentPadding when scrolling carousels with start and end shift offsets that overlapped. (c3d5f3a, b/420618979)
  • Update SwipeToDismiss’ enabled behavior to observe settled state instead of current. Restores existing behavior where anchor behavior is only disabled when the component is settled at a dismissed state. (3844e07, b/425006844)
  • ExposedDropdownMenu’s popup menu can now be opened via keyboard input. Also fix the menu is now reachable via keyboard for the editable variation. (46ead03)

Compose Material3 Adaptive: v1.2.0-alpha08

July 2, 2025

androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha08 is released. Version 1.2.0-alpha08 contains these commits.

Compose Runtime: v1.9.0-beta02

July 2, 2025

androidx.compose.runtime:runtime-*:1.9.0-beta02 is released. Version 1.9.0-beta02 contains these commits.

Bug Fixes

  • Reduced the reference lifetime of values in the slot table between compositions. There are cases where a reference in a slot table could last a frame longer than necessary. (I49e74, b/418516940)
  • Remove Kotlin mangle for Hot reload methods. (Ic56a3, b/426871325)

Compose UI: v1.9.0-beta02

July 2, 2025

androidx.compose.ui:ui-*:1.9.0-beta02 is released. Version 1.9.0-beta02 contains these commits.

API Changes

  • Changes companion object to experimental to match class. (I8452a)
  • Removed isTrackFocusEnabled experimental flag (I003fd)

Bug Fixes

  • When no WindowInsets enchroach on the content of the ComposeView, WindowInsetsRulers values are not provided. (I71221)

Concurrent: v1.3.0-rc01

July 2, 2025

androidx.concurrent:concurrent-futures:1.3.0-rc01 and androidx.concurrent:concurrent-futures-ktx:1.3.0-rc01 are released. Version 1.3.0-rc01 contains these commits.

Core Splashscreen: v1.2.0-rc01

July 2, 2025

androidx.core:core-splashscreen:1.2.0-rc01 is released. Version 1.2.0-rc01 contains these commits.

Core and Core-ktx: v1.17.0-beta01

July 2, 2025

androidx.core:core:1.17.0-beta01...

Read more

2025-06-30

30 Jun 18:50

Choose a tag to compare

Core 1.7.0: Core Core-ktx 1.7.0-beta01

June 30, 2025

androidx.test:core:1.7.0-beta01 and androidx.test:core-ktx:1.7.0-beta01 are released.

Espresso 3.7.0: Espresso 3.7.0-beta01

June 30, 2025

The following artifacts were released:

  • androidx.test.espresso:espresso-accessibility:3.7.0-beta01
  • androidx.test.espresso:espresso-core:3.7.0-beta01
  • androidx.test.espresso:espresso-contrib:3.7.0-beta01
  • androidx.test.espresso:espresso-idling-resource:3.7.0-beta01
  • androidx.test.espresso:espresso-intents:3.7.0-beta01
  • androidx.test.espresso:espresso-remote:3.7.0-beta01
  • androidx.test.espresso:espresso-web:3.7.0-beta01
  • androidx.test.espresso.idling:idling-concurrent:3.7.0-beta01
  • androidx.test.espresso.idling:idling-net:3.7.0-beta01

Test:

Test:

Test:

Monitor 1.8.0: monitor 1.8.0-beta01

June 30, 2025

androidx.test:monitor:1.8.0-beta01 is released.

New Features

  • Adds @Supersedes to ServiceLoaderWrapper so it's possible to choose one implementation over another when multiple exist.

Orchestrator 1.6.0: orchestrator 1.6.0-beta01

June 30, 2025

androidx.test:orchestrator:1.6.0-beta01 is released.

Bug Fixes

  • Fix a bug where the instrumentation test application would not startup if the arguments passed to ORCHESTRATOR_FORWARDED_INSTRUMENTATION_ARGS contains spaces.

Runner 1.7.0: runner 1.7.0-beta01

June 30, 2025

androidx.test:runner:1.7.0-beta01 is released.

Rules 1.7.0: rules 1.7.0-beta01

June 30, 2025

androidx.test:rules:1.7.0-beta01 is released.

Breaking Changes

  • ServiceTestRule.startService will now throw if the provided intent does not launch a service.

Services 1.6.0: services 1.6.0-beta01

June 30, 2025

androidx.test.services:test-services:1.6.0-beta01 androidx.test.services:storage:1.6.0-beta01 are released.

2025-06-17

18 Jun 18:51

Choose a tag to compare

Activity: v1.12.0-alpha03

June 18, 2025

androidx.activity:activity:1.12.0-alpha03, androidx.activity:activity-compose:1.12.0-alpha03, and androidx.activity:activity-ktx:1.12.0-alpha03 are released. Version 1.12.0-alpha03 contains these commits.

Bug Fixes

  • OnBackPressedDispatcher and NavigationEventDispatcher are now both initialized lazily in ComponentActivity. (I710e6)

  • Fixed issues with OnBackPressedDistpatcher that caused the following:

    • Only the latest dispatcher an OnBackPressedCallback was added to being notified of its enabled state (b/418715930)
    • OnBackPressedDispatcher removes the wrong callback when using the addCallback function that takes a lifecycle. (b/422714753)
    • OnBackPressedDispatcher.remove() does not remove all instances of a registered OnBackPressedCallback. (b/423024414)

Benchmark: v1.4.0-rc01

June 18, 2025

androidx.benchmark:benchmark-*:1.4.0-rc01 is released. Version 1.4.0-rc01 contains these commits.

Bug Fixes

  • Added workaround for runtime images causing CompilationMode.None() to not measure worst case performance after first iteration. Unfortunately this workaround requires a delay of 5 seconds to intentionally corrupt the runtime image at the beginning of each macrobenchmark suite (I4a4f1).

Browser: v1.9.0-alpha05

June 18, 2025

androidx.browser:browser:1.9.0-alpha05 is released. Version 1.9.0-alpha05 contains these commits.

API Changes

  • Remove experimental annotation from ephemeral browsing API (If8b1b)

Car App: v1.8.0-alpha02

June 18, 2025

androidx.car.app:app-*:1.8.0-alpha02 is released. Version 1.8.0-alpha02 contains these commits.

New Features

  • Added support for Action.MEDIA_PLAYBACK which displays an indicator based on media playback state.
  • Added support for controlling a user’s scroll position upon refresh of the SectionedItemTemplate.

API Changes

  • Add support for saving a user's scroll position within the SectionedItemTemplate between refreshes. (Ia4c51)
  • Updated MEDIA_PLAYBACK action to enable it for row end action (I05cc4)
  • Add a new action type (I6cc5a)
  • Add CarAppExtender#addAction(Action) so that any type of action can be added to the CarAppExtender. (Idc4d7)
  • Made SectionedItemTemplate accessible for API 8 and above. (I9a079)

Compose Animation: v1.8.3

June 18, 2025

androidx.compose.animation:animation-*:1.8.3 is released. Version 1.8.3 contains these commits.

Compose Animation: v1.9.0-beta01

June 18, 2025

androidx.compose.animation:animation-*:1.9.0-beta01 is released. Version 1.9.0-beta01 contains these commits.

Compose Foundation: v1.8.3

June 18, 2025

androidx.compose.foundation:foundation-*:1.8.3 is released. Version 1.8.3 contains these commits.

Compose Foundation: v1.9.0-beta01

June 18, 2025

androidx.compose.foundation:foundation-*:1.9.0-beta01 is released. Version 1.9.0-beta01 contains these commits.

Breaking Changes

  • The background and border modifier nodes now implement SemanticsModifierNode. This can result in new SemanticsNodes added to the semantics tree and, therefore, lead to test failures in tests that make assumptions about the semantics tree structure. For example, tests that use onChild, onParent, onSibling, and other similar methods to make assertions can fail if a new node is added between the current and target nodes. The preferred way to fix these failures is to add a testTag to the target node directly. Another approach is to use a looser matcher, such as onNode(hasAnyAncestor(hasText(“ancestor”)) and hasText(“target”)). (I638b5)

API Changes

  • Rename Modifier.addTextContextMenuComponents to appendTextContextMenuComponents. (I4c43f)
  • Removed AnnotatedOutputTransformation and carried addStyle functions to TextFieldBuffer. addStyle can still only be called from OutputTransformation. (I9930a, b/417991824)
  • Clickable is rewritten to not use suspend pointer input as an optimization. This feature is enabled by a flag - you can disable if you encounter a bug in the new implementation - ComposeFoundationFlags.isNonSuspendingPointerInputInClickableEnabled. (I85b65)
  • Introduced isFlingCancellationWithNestedScrollFixEnabled to fix an issue with fling propagation in nested scrolling. In this CL we are restoring the fling continuation behavior removed in aosp/3260391. We will still cancel the fling animation in case the child is removed from composition. (I467f4, b/405910180, b/419049142, b/416784125)
Read more