Skip to content

2025-07-16

Compare
Choose a tag to compare
@github-actions github-actions released this 16 Jul 18:54
· 13 commits to main since this release

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 between EXTERNAL (for performance) and EMBEDDED (for compatibility on older APIs/quirky devices). This behavior can still be overridden by explicit settings in ViewfinderSurfaceRequest or XML attributes (on the View-based API). (Iecd3a)
  • Improved Surface session management by allowing the ViewfinderSurfaceSession to be kept alive across surface create/destroy lifecycles when using TextureView or SurfaceView on API 29+. (I112d9)
  • The Viewfinder now ensures Surfaces are released at the proper time, only when no longer in use by the session, rather than always releasing when the Composable is disposed. For EXTERNAL (SurfaceView) this behavior is currently only available on API 29+. For EMBEDDED (TextureView), this behavior is present on all API levels. (I9a03f)
  • The Viewfinder now properly handles surface replacement in scenarios such as when an EXTERNAL viewfinder on API level 28 or lower moves off screen or if a Viewfinder (with any ImplementationMode) is part of moveableContentOf(). (I79432)
  • Composable Viewfinder 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)
  • Fixes an issue on Android 10/11 where the EXTERNAL Viewfinder 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)

Car App: v1.7.0

July 16, 2025

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

  • This is the first stable release that includes the fix for CVE-2024-10382 patched on beta03. If you are using a lower version than 1.7-beta03, please update to use this version.

Compose Animation: v1.9.0-beta03

July 16, 2025

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

Compose Foundation: v1.9.0-beta03

July 16, 2025

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

Bug Fixes

  • Fixed a regression bug breaking sticky headers behavior in lazy grids when empty header content is provided. (e3e3400)

Compose Material: v1.9.0-beta03

July 16, 2025

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

Compose Material3: v1.4.0-alpha18

July 16, 2025

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

New Features

  • ModalBottomSheetProperties now provides the option to disable dismissRequest from a scrim click. (I8e715)
  • Add trackCornerSize support to RangeSlider's Track. (Iec529)

API Changes

  • Made railExpanded a required param for WideNavigationRailItem, added modalContentColor for WideNavigationRailColors and moved WideNavigationRailDefaults.modalContainerShape to ModalWideNavigationRailDefaults.containerShape. (Id60c5)
  • Move WideNavigationRail’s new colors function param to be the last one, and deprecate the old function. (Iac7f7)
  • PullToRefresh is now an stable API (I18537)
  • Updates to the DatePickers API. We removed the default null end date for DateRangePicker and made it mandatory to pass in. We also clarified the midnight UTC usage of the date representation in the API documentation, and marked the latest getters and setters that use the java.time APIs as experimental for now. (I121b3, b/427952972)
  • Graduate the Icon with tint: ColorProducer param API to non-experimental. (Ia0133)
  • Removed the experimental annotations from DatePicker, DateRangePicker, and their supporting states, classes, and types. (I0e4e0, b/391848485)
  • Changed default focusable value to false to fix a11y focus, and added hasAction param to TooltipBox. (I62998)
  • Graduate experimental WideNavigationRail, ShortNavigationBar and NavigationItem APIs. (I3ca3c)
  • Remove the @ExperimentalMaterial3Api annotations from some of the top app bar functions, supporting classes, and objects. (I0a9b7)

Compose Material3 Adaptive: v1.2.0-alpha09

July 16, 2025

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

Compose Runtime: v1.9.0-beta03

July 16, 2025

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

Compose UI: v1.9.0-beta03

July 16, 2025

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

Bug Fixes

  • Fixes an issue where uniformly blurred inner shadows were not moving correctly with an offset.

Concurrent: v1.3.0

July 16, 2025

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

credentials: v1.6.0-alpha04

July 16, 2025

androidx.credentials:credentials:1.6.0-alpha04 and androidx.credentials:credentials-play-services-auth:1.6.0-alpha04 are released. Version 1.6.0-alpha04 contains these commits.

New Features

  • The Credential Manager dialogs will now look more consistent across Android versions before and after Android 14, on mobile and wearable devices

Health Connect: v1.1.0-rc03

July 16, 2025

androidx.health.connect:connect-client:1.1.0-rc03, androidx.health.connect:connect-client-external-protobuf:1.1.0-rc03, and androidx.health.connect:connect-client-proto:1.1.0-rc03 are released. Version 1.1.0-rc03 contains these commits.

Bug Fixes

  • Fixed IllegalArgumentException for aggregations over a DST boundary. (Ic9e4f)

Lifecycle: v2.9.2

July 16, 2025

androidx.lifecycle:lifecycle-*:2.9.2 is released. Version 2.9.2 contains these commits.

Bug Fixes

  • Added new Kotlin Multiplatform (KMP) targets to Lifecycle artifacts. Lifecycle now supports the following platforms in total: JVM (Android and Desktop), Native (Linux, iOS, watchOS, macOS, MinGW), and Web (JavaScript, WasmJS). Note that no new KMP targets have been added to the *-compose artifacts, as this depends on the stable release of Compose 1.9. (I01cb8).

Dependency updates

Navigation: v2.9.2

July 16, 2025

androidx.navigation:navigation-*:2.9.2 is released. Version 2.9.2 contains these commits.

Bug Fixes

  • Fixed an issue with the entry not resuming when the dialog above the entry is dismissed (Idb20e, b/418746335)
  • Fixed MissingFieldException error when testing SavedStateHandle with type safe routes while using custom NavTypes. (I2f843, b/421002511)

pdf: v1.0.0-alpha10

July 16, 2025

androidx.pdf:pdf-*:1.0.0-alpha10 is released. Version 1.0.0-alpha10 contains these commits.

New Features

  • Enhanced selection that allows users to select text across multiple pages by dragging selection handles beyond page boundaries.
  • Applications can now intercept and customize the handling of hyperlink clicks within PDF documents.

API Changes

  • Exposes a Composable for presenting PDF content (I8e7ee)
  • Moving PdfPoint and PdfRect to androidx.pdf.models package (I26cf4)
  • Exposes a View component for presenting PDF content (I9fe27)
  • Exposes API to initialize pdf resources ahead of time and bring down cold-start latency (a18fa89)
  • Exposes API to override hyperlink click handling on Pdf content(6330a8b)
  • Exposes a new artifact pdf-document-service and the corresponding APIs - PdfLoader, PdfDocument and SandboxedPdfLoader. The interfaces can be used to implement the parsing and processing component of the PDF document (Ide70d)
  • Exposes an API to set PdfDocument on PdfView to initialize rendering of the document (If8738)

privacysandbox sdkruntime: v1.0.0-alpha18

July 16, 2025

androidx.privacysandbox.sdkruntime:sdkruntime-client:1.0.0-alpha18, androidx.privacysandbox.sdkruntime:sdkruntime-core:1.0.0-alpha18, and androidx.privacysandbox.sdkruntime:sdkruntime-provider:1.0.0-alpha18 are released. Version 1.0.0-alpha18 contains these commits.

API Changes

  • SandboxedSdkProviderCompat.getView() completely removed. If the project also uses androidx.privacysandbox.tools, the latest version should be used.
  • SdkSandboxControllerCompat migrated to sdkruntime-provider. SdkSandboxControllerCompat in sdkruntime-core is deprecated and will be removed next release.

Bug Fixes

  • SandboxedSdkProviderCompat.onLoadSdk() now called from the main thread regardless of loadSdk() caller thread.

Room: v2.8.0-alpha01

July 16, 2025

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

New Features

  • Added a new artifact androidx.room:room-sqlite-wrapper which contains APIs to get a SupportSQLiteDatabase wrapper of RoomDatabase with a configured SQLiteDriver. To get the wrapper use the new extension function RoomDatabase.getSupportWrapper(). This is a compatibility artifact to maintain usages of SupportSQLiteDatabase, usually obtained from RoomDatabase.openHelper.writableDatabase, even if the Room database is configured with a SQLiteDriver. This wrapper is useful for incremental migration of codebases who wish to adopt SQLiteDriver but have extensive usages of the SupportSQLite APIs yet they want to take advantage of the BundledSQLiteDriver. (Icf6ac)
  • Add KMP targets for Watch OS and TV OS (I228f6, b/394238801)

Bug Fixes

  • Fix a deadlock that could occasionally occur when using suspending transactions and the AndroidSQLiteDriver. (b/415006268)

Savedstate: v1.3.1

July 16, 2025

androidx.savedstate:savedstate-*:1.3.1 is released. Version 1.3.1 contains these commits.

Bug Fixes

  • Add all KMP targets supported by annotations to SavedState artifacts.
  • Added new Kotlin Multiplatform (KMP) targets to SavedState artifacts. SavedState now supports the following platforms in total: JVM (Android and Desktop), Native (Linux, iOS, watchOS, macOS, MinGW), and Web (JavaScript, WasmJS). Note that no new KMP targets have been added to the *-compose artifacts, as this depends on the stable release of Compose 1.9. (I062f4).

Sqlite: v2.6.0-alpha01

July 16, 2025

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

New Features

API Changes

  • Add an API for checking if a SQLiteConnection has an active transaction. Since SQLite transactions are not nested this API can help the applications determine if they should use BEGIN / COMMIT or SAVEPOINT / RELEASE. (I5bf5e, b/319627988)
  • Add an API to SQLiteDriver to report if internally it has a connection pool or not. (I52a51, b/408010324)

Tv-Material: v1.0.1

July 16, 2025

androidx.tv:tv-material:1.0.1 is released. Version 1.0.1 contains these commits.

Bug Fixes

  • Updated the NavigationDrawerItem’s height to match the specifications. (cf9a3ce)
  • Moved compositing strategy configuration from Surface composable to the Text composable. This fixes the bug where Exoplayer wasn’t rendering on the Surface composables on lower Android API versions. (9858ffb)

Wear: v1.4.0-alpha02

July 16, 2025

androidx.wear:wear:1.4.0-alpha02 is released. Version 1.4.0-alpha02 contains these commits.

Bug Fixes

  • This library now uses JSpecify nullness annotations, which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (If4b1a, b/326456246)

Wear Core: v1.0.0-alpha02

July 16, 2025

androidx.wear:wear-core:1.0.0-alpha02 is released. Version 1.0.0-alpha02 contains these commits.

API Changes

  • Updates WearApiVersionHelper to include VIC/Baklava (I4676d)

Bug Fixes

  • This library now uses JSpecify nullness annotations, which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (Icbfb9, b/326456246)

Wear-Input 1.2: v1.2.0-alpha04

July 16, 2025

androidx.wear:wear-input:1.2.0-alpha04 and androidx.wear:wear-input-testing:1.2.0-alpha04 are released. Version 1.2.0-alpha04 contains these commits.

New Features

  • Account for screen rotation when calculating the location of physical buttons relative to the screen. (87a57e)

API Changes

  • Rename LOC* to LOCATION* in wear-input. (I5e879)

Bug Fixes

  • This library now uses JSpecify nullness annotations, which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (Icbfb9, b/326456246)

Wear Compose: v1.5.0-beta06

July 16, 2025

androidx.wear.compose:compose-*:1.5.0-beta06 is released. Version 1.5.0-beta06 contains these commits.

Bug Fixes

  • Fix EdgeButton animation when LazyColumn or ScalingLazyColumn have reverseLayout = true. (I46a1a)
  • Fixed a bug in ScreenScaffold where touch-to-explore was not working under Talkback if a ScrollIndicator/PageIndicator was provided. (I6dcee)
  • TransformingLazyColumn now allows for custom morphing from TransformationSpec by reading itemHeight value provided by TransformationSpec in the background painter. (I6a599)
  • Animated enabled/disabled color transitions for IconButton, to be consistent with IconToggleButton. (Ife10a)
  • Removed the minimum section clamping in CircularProgressIndicator to avoid a noticeable jump to the minimum dot size when animating. As part of this change, the targetProgress parameter in drawCircularProgressIndicator is now unused. (I33309)
  • Picker now has the semantic role ValuePicker which can be used by screen readers to make pickers more accessible. Picker also has updated accessibility click labels which differentiate between adjusting the value in read-only mode and selecting the current value otherwise. (I33309)