2025-07-16
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. TheCameraInfo.isFeatureGroupSupported
API allows to know if a feature group is supported before binding aSessionConfig
.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>)
andCameraInfo.getSupportedFrameRateRanges(SessionConfig)
, enabling developers to query guaranteed supported frame rates constrained by a specificSessionConfig
and then apply the frame rate onSessionConfig
. (Ieacf7) - Introduced the new
SessionConfig
API, which includes a better abstraction for configuring use cases, session parameters,CameraEffect
,ViewPort
and etc. Binding aSessionConfig
to a LifecycleOwner opens the camera session, configures it using the specified use cases and session parameters, and applies the designatedCameraEffect
andViewPort
. When updating a newSessionConfig
to the sameLifecycleOwner
, you can just bind a newSessionconfig
without the need of invoking unbind orunbindAll
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 underlyingViewfinder
. This covers scenarios such as when anEXTERNAL
viewfinder on API level 28 or lower moves off screen or if aCameraXViewfinder
(with anyImplementationMode
) is part ofmoveableContentOf()
. In cases where the underlyingViewfinderSurfaceSession
cannot be kept alive, theCameraXViewfinder
will invalidate the current CameraXSurfaceRequest
, allowing CameraX to use the newSurface
. (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'sPager
. This change ensures that the Composable can be successfully reset by implementing theonReset
callback ofAndroidView
, supporting bothEMBEDDED
andEXTERNAL
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
forViewfinder
(both Compose and View-based) now intelligently selects betweenEXTERNAL
(for performance) andEMBEDDED
(for compatibility on older APIs/quirky devices). This behavior can still be overridden by explicit settings inViewfinderSurfaceRequest
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. ForEXTERNAL
(SurfaceView
) this behavior is currently only available on API 29+. ForEMBEDDED
(TextureView
), this behavior is present on all API levels. (I9a03f) - The
Viewfinder
now properly handles surface replacement in scenarios such as when anEXTERNAL
viewfinder on API level 28 or lower moves off screen or if aViewfinder
(with anyImplementationMode
) is part ofmoveableContentOf()
. (I79432) - Composable
Viewfinder
now works correctly with Compose'sPager
. This change ensures that the Composable can be successfully reset by implementing theonReset
callback ofAndroidView
, supporting bothEMBEDDED
andEXTERNAL
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 toRangeSlider
's Track. (Iec529)
API Changes
- Made
railExpanded
a required param forWideNavigationRailItem
, addedmodalContentColor
forWideNavigationRailColors
and movedWideNavigationRailDefaults.modalContainerShape
toModalWideNavigationRailDefaults.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 forDateRangePicker
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 toTooltipBox
. (I62998) - Graduate experimental
WideNavigationRail
,ShortNavigationBar
andNavigationItem
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
- Lifecycle now depends on Annotation
1.9.1
to enable support for the new KMP targets (Ic9e4f, b/397701294).
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 testingSavedStateHandle
with type safe routes while using customNavTypes
. (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
andPdfRect
toandroidx.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
andSandboxedPdfLoader
. The interfaces can be used to implement the parsing and processing component of the PDF document (Ide70d) - Exposes an API to set
PdfDocument
onPdfView
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 usesandroidx.privacysandbox.tools
, the latest version should be used.SdkSandboxControllerCompat
migrated tosdkruntime-provider
.SdkSandboxControllerCompat
insdkruntime-core
is deprecated and will be removed next release.
Bug Fixes
SandboxedSdkProviderCompat.onLoadSdk()
now called from the main thread regardless ofloadSdk()
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 aSupportSQLiteDatabase
wrapper ofRoomDatabase
with a configuredSQLiteDriver
. To get the wrapper use the new extension functionRoomDatabase.getSupportWrapper()
. This is a compatibility artifact to maintain usages ofSupportSQLiteDatabase
, usually obtained fromRoomDatabase.openHelper.writableDatabase
, even if the Room database is configured with aSQLiteDriver
. This wrapper is useful for incremental migration of codebases who wish to adoptSQLiteDriver
but have extensive usages of theSupportSQLite
APIs yet they want to take advantage of theBundledSQLiteDriver
. (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
- Added KMP targets for Watch OS and TV OS (I45883, b/427889948)
API Changes
- Add an API for checking if a
SQLiteConnection
has an active transaction. SinceSQLite
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 whenLazyColumn
orScalingLazyColumn
havereverseLayout = true
. (I46a1a) - Fixed a bug in
ScreenScaffold
where touch-to-explore was not working under Talkback if aScrollIndicator/PageIndicator
was provided. (I6dcee) TransformingLazyColumn
now allows for custom morphing fromTransformationSpec
by readingitemHeight
value provided byTransformationSpec
in the background painter. (I6a599)- Animated enabled/disabled color transitions for
IconButton
, to be consistent withIconToggleButton
. (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, thetargetProgress
parameter indrawCircularProgressIndicator
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)