2025-07-23
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
setOpenInBrowserButtonStatefor (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.
SessionConfignow contains new APIs to denote a group of features as either required or preferred. TheCameraInfo.isFeatureGroupSupportedAPI allows to know if a feature group is supported before binding aSessionConfig.SessionConfigalso 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 specificSessionConfigand then apply the frame rate onSessionConfig. (Ieacf7) - Introduced the new
SessionConfigAPI, which includes a better abstraction for configuring use cases, session parameters,CameraEffect,ViewPortand etc. Binding aSessionConfigto a LifecycleOwner opens the camera session, configures it using the specified use cases and session parameters, and applies the designatedCameraEffectandViewPort. When updating a newSessionConfigto the sameLifecycleOwner, you can just bind a newSessionconfigwithout the need of invoking unbind orunbindAllfirst. (Iedfc3) - Added new APIs to record high-speed/slow-motion video. See
HighSpeedVideoSessionConfigAPI 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
PreviewViewis used,CameraEffectis 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
PreviewViewbecomes 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)
CameraXViewfindernow properly handles surface replacement in the underlyingViewfinder. This covers scenarios such as when anEXTERNALviewfinder on API level 28 or lower moves off screen or if aCameraXViewfinder(with anyImplementationMode) is part ofmoveableContentOf(). In cases where the underlyingViewfinderSurfaceSessioncannot be kept alive, theCameraXViewfinderwill invalidate the current CameraXSurfaceRequest, allowing CameraX to use the newSurface. (I79432)- Fixes an issue on Android 10/11 where the
EXTERNALCameraXViewfindercould 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
CameraXViewfindernow works correctly with Compose'sPager. This change ensures that the Composable can be successfully reset by implementing theonResetcallback ofAndroidView, supporting bothEMBEDDEDandEXTERNALimplementations. (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
ImplementationModeforViewfinder(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 inViewfinderSurfaceRequestor XML attributes (on the View-based API). (Iecd3a) - Improved Surface session management by allowing the
ViewfinderSurfaceSessionto be kept alive across surface create/destroy lifecycles when using TextureView or SurfaceView on API 29+. (I112d9) - The
Viewfindernow 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
Viewfindernow properly handles surface replacement in scenarios such as when anEXTERNALviewfinder on API level 28 or lower moves off screen or if aViewfinder(with anyImplementationMode) is part ofmoveableContentOf(). (I79432) - Composable
Viewfindernow works correctly with Compose'sPager. This change ensures that the Composable can be successfully reset by implementing theonResetcallback ofAndroidView, supporting bothEMBEDDEDandEXTERNALimplementations. (I0d9be) - Fixes an issue on Android 10/11 where the
EXTERNALViewfindercould 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
ModalBottomSheetPropertiesnow provides the option to disable dismissRequest from a scrim click. (I8e715)- Add
trackCornerSizesupport toRangeSlider's Track. (Iec529)
API Changes
- Made
railExpandeda required param forWideNavigationRailItem, addedmodalContentColorforWideNavigationRailColorsand movedWideNavigationRailDefaults.modalContainerShapetoModalWideNavigationRailDefaults.containerShape. (Id60c5) - Move
WideNavigationRail’s new colors function param to be the last one, and deprecate the old function. (Iac7f7) PullToRefreshis now an stable API (I18537)- Updates to the
DatePickersAPI. We removed the default null end date forDateRangePickerand 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: ColorProducerparam 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
hasActionparam toTooltipBox. (I62998) - Graduate experimental
WideNavigationRail,ShortNavigationBarandNavigationItemAPIs. (I3ca3c) - Remove the
@ExperimentalMaterial3Apiannotations 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
IllegalArgumentExceptionfor 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
*-composeartifacts, as this depends on the stable release of Compose 1.9. (I01cb8).
Dependency updates
- Lifecycle now depends on Annotation
1.9.1to 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
MissingFieldExceptionerror when testingSavedStateHandlewith 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
PdfPointandPdfRecttoandroidx.pdf.modelspackage (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,PdfDocumentandSandboxedPdfLoader. The interfaces can be used to implement the parsing and processing component of the PDF document (Ide70d) - Exposes an API to set
PdfDocumentonPdfViewto 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.SdkSandboxControllerCompatmigrated tosdkruntime-provider.SdkSandboxControllerCompatinsdkruntime-coreis 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-wrapperwhich contains APIs to get aSupportSQLiteDatabasewrapper ofRoomDatabasewith 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 adoptSQLiteDriverbut have extensive usages of theSupportSQLiteAPIs 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
SavedStateartifacts. - Added new Kotlin Multiplatform (KMP) targets to
SavedStateartifacts.SavedStatenow 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*-composeartifacts, 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
SQLiteConnectionhas an active transaction. SinceSQLitetransactions 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
SQLiteDriverto 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
WearApiVersionHelperto 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
EdgeButtonanimation whenLazyColumnorScalingLazyColumnhavereverseLayout = true. (I46a1a) - Fixed a bug in
ScreenScaffoldwhere touch-to-explore was not working under Talkback if aScrollIndicator/PageIndicatorwas provided. (I6dcee) TransformingLazyColumnnow allows for custom morphing fromTransformationSpecby readingitemHeightvalue provided byTransformationSpecin the background painter. (I6a599)- Animated enabled/disabled color transitions for
IconButton, to be consistent withIconToggleButton. (Ife10a) - Removed the minimum section clamping in
CircularProgressIndicatorto avoid a noticeable jump to the minimum dot size when animating. As part of this change, thetargetProgressparameter indrawCircularProgressIndicatoris now unused. (I33309) - Picker now has the semantic role
ValuePickerwhich 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)