2023-07-26
Annotation: v1.7.0-alpha03
July 26, 2023
androidx.annotation:annotation-*:1.7.0-alpha03 is released. Version 1.7.0-alpha03 contains these commits.
Bug Fixes
- Maven POM publication now includes default JVM-targeted multiplatform artifact as dependency
Appcompat: v1.7.0-alpha03
July 26, 2023
androidx.appcompat:appcompat:1.7.0-alpha03 and androidx.appcompat:appcompat-resources:1.7.0-alpha03 are released. Version 1.7.0-alpha03 contains these commits.
New Features
Support for getting per-app locales in non-Activity contexts (I58e753). Four new APIs have been added for this feature:
LocaleManagerCompat.getApplicationLocales(): for developers to get per-app locales out of activity scope.ContextCompat.getString(): return localized strings based on per-app locales.ContextCompat.getContextForLanguage(): the context returned by this method will respect the per-app locales.ConfigurationCompat.setLocales(): for above APIs, to set the configuration's locale.
Other API Changes
- Added
setLineHeight(unit, lineHeight)toTextViewcompat classes (Ia9fa9) - Added
setLineHeight(unit, lineHeight)toTextViewcompat classes (Ib2ee1) - Added
setLineHeight(unit, lineHeight)toTextViewcompat classes (I15716)
Bug Fixes
AppCompatDialognow correctly sets theLifecycleOwner,SavedStateRegistryOwner, andOnBackPressedDispatcherOwneron the dialog's decor view via theViewTreeAPIs, fixing issues when hosting aComposeViewwithin anAppCompatDialog.AppCompatnow depends on Activity 1.7.0. (Ib28ab, b/261314581)- Significantly improve the performance of
SupportMenuInflater(I0b087)
Browser: v1.6.0-rc01
July 26, 2023
androidx.browser:browser:1.6.0-rc01 is released with no changes since 1.6.0-beta01. Version 1.6.0-rc01 contains these commits.
CameraX: v1.3.0-beta02
July 26, 2023
androidx.camera:camera-*:1.3.0-beta02 is released. Version 1.3.0-beta02 contains these commits.
Bug Fixes
- Use torch as flash for Pixel 4 and 5 variants to improve capture quality in low light (I56ff5, b/280221967)
- Fixed large captured JPEG image issue on Samsung A5 (2017) series devices. The captured JPEG images contain redundant 0's padding data in the JFIF compressed data segment. It causes the captured images to have about 32 MB file size. Those redundant 0's padding data will be removed to make the captured images have normal image file sizes. (I29837, b/288828159)
- Fixed retry not triggering properly in case of capture failure in problematic devices mentioned in
CaptureFailedRetryQuirk. (I7b589)
Car App: v1.4.0-alpha02
July 26, 2023
androidx.car.app:app-*:1.4.0-alpha02 is released. Version 1.4.0-alpha02 contains these commits.
- Release of Alpha02 is intended to be a preparation for an upcoming release of beta01.
New Features
- Map rendering on Instrument Cluster support for navigation apps
- Added Tabs for apps to improve layout experience
- Added List / Grid template rendering options
- Added new categories for Weather and Comms
- Move several API’s to the next CarApi 7 release
API Changes
- Add multimedia fields to
CarMessage(I5aaf6) - Adds custom actions to
ConversationItemin Car App Library (Ie5ed6) - Add extras to indicate a media item is played with an immersive audio format and showcase its content format logo (Icb5bb)
- Add new Action type,
ActionsConstraintsAPI to support compose button. (I31661) - Made
set/getTemplateasset/get ContentTemplate(Ica036) - Template parameter would now be
@NonNull. UpdatedMapWithContentTemplateAPI documentation (I0f8ed) - Removes
@ExperimentalCarApitag for Actions inListTemplatefor launch in CAL 1.4 (I2cfcb) - Removes
@ExperimentalCarApitag forTabTemplate(Ifcb82) - Remove
@ExperimentalCarApiannotations from Row secondary actions and decorations (I8487e) - Adds active tab content ID to
TabTemplateand deprecates active state on Tabs (I96932) - Add
ItemImageShapeproperty toGridTemplate(Ibf431) - Add
ItemSizeproperty toGridTemplate, which controls grid item sizing according to relative small, medium, large buckets. (Icdb3b) - Open up the API access for developers to gain a copy of the current screen stack. (I48107)
- Adds category for weather apps to Car App Library (I2be44)
- Adds category for calling apps to Car App Library (Icab33)
- Replaced
GridItem.Builder#setBadge()with overloadedsetImage()methods (Id2000) - Add icon property to Badge (I629b2)
- Add method to set dot badge background color (I6411c)
- Add Badge property to
GridItem, allowing a badge to be displayed on top of aGridItemimage. (I95de7) - Added an experimental Badge object that will represent a badge to be displayed over an image. (I9878d)
Compose Animation: v1.5.0-rc01
July 26, 2023
androidx.compose.animation:animation-*:1.5.0-rc01 is released. Version 1.5.0-rc01 contains these commits.
Bug Fixes
Fixed an issue where calling
.valueon a primitive state type (likeMutableIntState) would report a lint warning with an invalid fix. The inspection will now recommend migrating to the correct property. (Iba953, b/287279257)An optional inspection to recommend migrating
mutableStateOf()calls to their corresponding specialized types for primitives is available. Its lint ID isAutoboxingStateCreation. Previously, this inspection was enabled by default for all projects. To see this warning in Android Studio's editor and your project's lint outputs, change its severity from informational to warning (or higher) by declaringwarning "AutoboxingStateCreation"inside your module'sbuild.gradleorbuild.gradle.ktsconfiguration as shown (I34f7e):android { lint { warning "AutoboxingStateCreation" } ... }
Compose Animation: v1.6.0-alpha02
July 26, 2023
androidx.compose.animation:animation-*:1.6.0-alpha02 is released. Version 1.6.0-alpha02 contains these commits.
API Changes
- New
ExitTransition.Holdto display outgoing content inAnimatedContentuntil both enter & exit transition are finished. (I5984f) - Additional annotations to specify allowed inputs to composables (I51109)
Compose Compiler: v1.5.1
July 26, 2023
androidx.compose.compiler:compiler:1.5.1, androidx.compose.compiler:compiler-daemon:1.5.1, and androidx.compose.compiler:compiler-hosted:1.5.1 are released. Version 1.5.1 contains these commits.
Bug Fixes
- Fixed composition trace event markers in
@ReadOnlyComposablefunctions with early returns which caused trace corruption.
Compose Foundation: v1.5.0-rc01
July 26, 2023
androidx.compose.foundation:foundation-*:1.5.0-rc01 is released. Version 1.5.0-rc01 contains these commits.
Bug Fixes
An optional inspection to recommend migrating
mutableStateOf()calls to their corresponding specialized types for primitives is available. Its lint ID isAutoboxingStateCreation. Previously, this inspection was enabled by default for all projects. To see this warning in Android Studio's editor and your project's lint outputs, change its severity from informational to warning (or higher) by declaringwarning "AutoboxingStateCreation"inside your module'sbuild.gradleorbuild.gradle.ktsconfiguration as shown (I34f7e):android { lint { warning "AutoboxingStateCreation" } ... }
Compose Foundation: v1.6.0-alpha02
July 26, 2023
androidx.compose.foundation:foundation-*:1.6.0-alpha02 is released. Version 1.6.0-alpha02 contains these commits.
API Changes
- Introduced
PagerLayoutInfowith information collected after a measure pass inPager. Also introducedPageInfo, the information about a single measured Page inPager. (Iad003, b/283098900) - Additional annotations to specify allowed inputs to composables (I51109)
- Added
SemanticsNodeInteraction.requestFocusas a more convenient and discoverable way to request focus in tests. (Ie8722) - Completely redesigned
PlatformTextInput*API. (I6c93a, b/274661182, b/267235947, b/277380808) SoftwareKeyboardControllerandLocalSoftwareKeyboardControllerare no longer experimental.LocalSoftwareKeyboardControlleris also now a properCompositionLocal. (I4c364)Modifier.transformablenow provides pan delta incanPanparameter to help determine the direction of the pan to allow or disallow it. (I692aa, b/266829800)- Updates the modifier
consumeWindowInsetsto extend the superclassAbstractComposeView(Iacd74, b/269479941)
Compose Material: v1.5.0-rc01
July 26, 2023
androidx.compose.material:material-*:1.5.0-rc01 is released. Version 1.5.0-rc01 contains these commits.
Compose Material: v1.6.0-alpha02
July 26, 2023
androidx.compose.material:material-*:1.6.0-alpha02 is released. Version 1.6.0-alpha02 contains these commits.
API Changes
- We are moving the density dependency to the component level. This applies to the following components:
SwipeToDismissand Sheet based components. Please use the new overload provided where density is a parameter. (I1846e) - Additional annotations to specify allowed inputs to composables (I51109)
- Updated API files to annotate compatibility suppression (I8e87a, b/287516207)
- Added new Start alignment for
FabPosition(Ib7aea, b/170592777) TextFieldColorsWithIconsin Material 2 has been deprecated in favor ofTextFieldColors. When overridingleadingIconColorortrailingIconColor, also override the overload withinteractionSource. (Id57ed, b/199377790)
Compose Material 3: v1.2.0-alpha04
July 26, 2023
androidx.compose.material3:material3-*:1.2.0-alpha04 is released. Version 1.2.0-alpha04 contains these commits.
New Features
- Experimental Segmented Button API (Ifc8fb)
- Dividers now have a parameter to control orientation to support vertical dividers. (I4c899, b/288438593)
API Changes
- We are moving the density dependency to the component level. This applies to the following components:
SwipeToDismissand Sheet based components. Please use the new overload provided where density is a parameter. (I1846e) - Additional annotations to specify allowed inputs to composables (Ief234)
- Add an icon parameter to segmented button, split semantics so that segmented buttons can be selectable to implement single-select, and toggleable to implement multi-select, with
SelectableSegmentedButtonRowandToggelableSegmentedButtonRowrespectively. (I38740) - Divider has been renamed to
HorizontalDivider. AddedVerticalDividerfunctionality. (I5975c) - Change the use of
ClosedFloatingPointRangefor the lighter weightFloatRangein experimental Material3 APIs to minimize autoboxing. (I4aab5) - Added new Start alignment for
FabPosition(Ib7aea, b/170592777)
Bug Fixes
ModalBottomSheetrespects local layout direction. (Ib4f44, b/285628622)
Compose Runtime: v1.5.0-rc01
July 26, 2023
androidx.compose.runtime:runtime-*:1.5.0-rc01 is released. Version 1.5.0-rc01 contains these commits.
Bug Fixes
Defer re-reading derived states until changes are recorded (f38099)
An optional inspection to recommend migrating
mutableStateOf()calls to their corresponding specialized types for primitives is available. Its lint ID isAutoboxingStateCreation. Previously, this inspection was enabled by default for all projects. To see this warning in Android Studio's editor and your project's lint outputs, change its severity from informational to warning (or higher) by declaringwarning "AutoboxingStateCreation"inside your module's build.gradle or build.gradle.kts configuration as shown (I34f7e):android { lint { warning "AutoboxingStateCreation" } ... }
Compose Runtime: v1.6.0-alpha02
July 26, 2023
androidx.compose.runtime:runtime-*:1.6.0-alpha02 is released. Version 1.6.0-alpha02 contains these commits.
New Features & Performance Enhancements
- Optimize
rememberSaveable(f01d79) - Defer re-reading derived states until changes are recorded (f38099)
- Improve providing composition local values (a337ea)
SideEffectis marked as@ExplicitGroupsComposableto avoid generating a group. (I74815)- Avoid comparing composition local maps on reuse (782071)
API Changes
- Added a special case overload for
CompositionLocalProvidersthat avoids overhead used to make providing multiple values faster but is overhead when providing a single value. (I6d640, b/288169379)
Bug Fixes
- Fix slot table memory leak (73fcfe)
- Fix how we restore
rememberSaveablewhenstateSaverreturns null (90748c)
Compose UI: v1.5.0-rc01
July 26, 2023
androidx.compose.ui:ui-*:1.5.0-rc01 is released. Version 1.5.0-rc01 contains these commits.
Bug Fixes
- Fixed crash happening when
SubcomposeLayoutis used insidemovableContentOf().
Compose UI: v1.6.0-alpha02
July 26, 2023
androidx.compose.ui:ui-*:1.6.0-alpha02 is released. Version 1.6.0-alpha02 contains these commits.
API Changes
- Added a service locator interface that can be implemented by implementors of Composition that allows an implementation of Composition that delegates to another composition delegate service lookups to the original Composition. This should not be called directy and is used to enable creating experimental APIs in the runtime that can be found from wrapped versions of the composer such as the UI module does. (I296b9)
- Completely redesigned
PlatformTextInput*API. (I6c93a, b/274661182, b/267235947, b/277380808) SoftwareKeyboardControllerandLocalSoftwareKeyboardControllerare no longer experimental.LocalSoftwareKeyboardControlleris also now a properCompositionLocal. (I4c364)LookaheadLayoutandLookaheadLayoutScopehave been deprecated for a few releases and are now removed. The replacement APIs areLookaheadScopethat can work with any Layout. (I12ac3)- Added
SemanticsNodeInteraction.requestFocusas a more convenient and discoverable way to request focus in tests. (Ie8722) - Add experimental APIs for registering global assertions, for use by testing frameworks in the future. (I12d77)
Bug Fixes
AndroidView'supdatecallback's first invocation will now be defered until the view is attached, instead of running when the composition that introduces theAndroidViewis applied. This fixes a bug where theupdatecallback wouldn't be invalidated if a state it read was changed immediately by an effect. (Ie9438, b/291094055)
Constraintlayout: v2.2.0-alpha11
July 26, 2023
androidx.constraintlayout:constraintlayout:2.2.0-alpha11 is released. Version 2.2.0-alpha11 contains these commits.
API Changes
- Add a setter method to allow developers to programmatically set the value for
mInfiniteCarousel(I0a8ca)
ConstraintLayout-compose, and ConstraintLayout-Core 1.1: v1.1.0-alpha11
July 26, 2023
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha11, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha11, and androidx.constraintlayout:constraintlayout-core:1.1.0-alpha11 are released. Version 1.1.0-alpha11 contains these commits.
New Features
- You may now provide an
InvalidationStrategyto optimize invalidations inMotionLayout. Which will typically be the source of reduced performance. (Iada0c) - You may now use
animateChanges = truewhen usingConstraintLayoutwith the inline Modifier DSL (Modifier.constrainAs), whenever a change on the constraints DSL is doneConstraintLayoutwill automatically animate to that new state. (I9abf1) - Enabled functionality for
limitBoundsToon OnSwipe. (I56522)
API Changes
- Renamed
TransitionScope.staggeredtoTransitionScope.maxStaggerDelay. (I0fd2d)
Bug Fixes
- Fixed
dragScaleparameter fromOnSwipenot working. (8bef26) - Fixed
customColorinMotionScenenot working properly with transparent colors. (81b2ac) - Fixed
OnSwipenot announcing properly when it has stopped, also fixed initial velocity calculation fortouchUp. (Ia5f6f) - Updated KDoc for
ConstraintLayoutComposable andConstraintset. (3bfe63)
Core-Animation and Core-Animation-Testing 1.0.0: v1.0.0-rc01
July 26, 2023
androidx.core:core-animation:1.0.0-rc01, androidx.core:core-animation-testing:1.0.0-rc01, and androidx.core:core-remoteviews:1.0.0-rc01 are released. Version 1.0.0-rc01 contains these commits.
New Features
RemoteViewsmoves moved to rc01 after stabilizing in beta.
Core and Core-ktx: v1.12.0-beta01
July 26, 2023
androidx.core:core:1.12.0-beta01, androidx.core:core-ktx:1.12.0-beta01, and androidx.core:core-testing:1.12.0-beta01 are released. Version 1.12.0-beta01 contains these commits.
API Changes
- Added
setLineHeight(unit, lineHeight)toTextViewcompat classes (Ia9fa9) - Added
TypedValueCompat.getUnitFromComplexDimension()from Android 14 (I958e8) - Added
setLineHeight(unit, lineHeight)toTextViewcompat classes (Ib2ee1) - Backport miscellaneous Accessibility APIs (Ic65ba)
- Backport API 34
AccessibilityNodeInfomethods (I44182) - Graduate stable SDK checks out of experimental (Ia9b35)
- Backport
AccessiiblityWindowInfo34 APIs (I96a5d) - Deprecated
BuildCompat.isAtLeastU(). UseSDK_INT >= 34instead. (I4f8e7, b/289269026) - Removed usages of experimental
isAtLeastU()API (Ie9117, b/289269026) - Migrated
BuildCompatto Kotlin for enhanced Deprecated tag (I56775, b/289269026) - Added
setLineHeight(unit, lineHeight)toTextViewcompat classes (I15716) - New
accessibilityDataSensitivecompat property. (I0c6e0) PendingIntentCompat.getActivityandgetServicemay return null whenFLAG_NO_CREATEis specified. (Iffdf0, b/289696515)- Updated API files to annotate compatibility suppression (I8e87a, b/287516207)
- Added
PendingIntentCompat.send()(Iaf707) - Adds compat versions of
Location.removeVerticalAccuracy(),Location.removeSpeedAccuracy(), andLocation.removeBearingAccuracy(). (I5b640)
Bug Fixes
- Made a view important for accessibility if the view has an accessibility delegate. (If2b54)
Core Google Shortcuts: v1.2.0-alpha01
July 26, 2023
androidx.core:core-google-shortcuts:1.2.0-alpha01 is released. Version 1.2.0-alpha01 contains these commits.
API Changes
- Merged public and experimental API files for a,b,c-paths (I8cfee, b/278769092)
- Migrated
androidx.coregroup to use merged public API files (Ifdef4, b/278769092)
Core-i18n Core-location-altitude: v1.0.0-alpha01
July 26, 2023
androidx.core:core-i18n:1.0.0-alpha01 and androidx.core:core-location-altitude:1.0.0-alpha01 are released. Version 1.0.0-alpha01 contains these commits.
New Features
- Added
AltitudeConverterCompatclass with a single static methodaddMslAltitudeToLocation(Context, Location)(I11168).
Core Ultra Wideband (UWB): v1.0.0-alpha06
July 26, 2023
androidx.core.uwb:uwb:1.0.0-alpha06 and androidx.core.uwb:uwb-rxjava3:1.0.0-alpha06 are released. Version 1.0.0-alpha06 contains these commits.
New Features
- Add support for Provisioned STS. Now the users can choose Provisioned STS for UWB ranging if the device is capable of Provisioned STS. (I19812)
API Changes
- Add
subSessionIdandsubSessionKeyInfotorangingParameters. Add new config ids to support Provisioned STS. (I19812) - Merged public and experimental API files for a,b,c-paths (I8cfee, b/278769092)
- N/A, API file changes are just reordering methods (I5fa95)
- Migrated
androidx.coregroup to use merged public API files (Ifdef4, b/278769092) - Add
minRangingInterval,supportedChannelsandsupportedConfigIdstorangingCapabilitiesas new fields. (I2a204)
Bug Fixes
- Fix the issue that the UWB client cannot be created in non-gms area.
credentials: v1.2.0-beta01
July 26, 2023
androidx.credentials:credentials:1.2.0-beta01 and androidx.credentials:credentials-play-services-auth:1.2.0-beta01 are released. Version 1.2.0-beta01 contains these commits.
API Changes
- Expose an API that determines whether the origin is populated or not (Ia91f4)
- Makes custom exceptions semantically correct (Ibf6f4)
- add test api (I61c1d)
- add test api (Iaeb6f)
- Removed usages of experimental
isAtLeastU()API (Ie9117, b/289269026) - Expose a custom origin getter that takes in allowlist (I0c1b4)
- Added
VisibleForTestannotation (I5467a) - Added
VisibleForTestannotation (Idf57a) - Remove test only apis (Idcc05)
- Expose provider entry classes to lower API levels (I2e00a)
- Add test apis (Id6b9e)
Bug Fixes
- Add test APIs (I0d243)
- Add new testing APIs (I6fa12)
- Expose autoselect for Create requests (I84eee)
- Make JSON encoding errors more detailed (I7a865)
- Gracefully report a developer error upon a non-activity context parameter (/I20dd7, b/288288940)
- Corrected Exception Parsing for Exceptions returned from Providers (Iaa2af,I0d243,I55151)
- Improved documentation for
toSlice
Emoji2: v1.4.0-rc01
July 26, 2023
androidx.emoji2:emoji2-*:1.4.0-rc01 is released. Version 1.4.0-rc01 contains these commits.
API Changes
- Introduce
registerSourcelist (Iae92f) - API Council feedback: renamed
TransitionManager.seekTo()tocreateSeekController(). Please adjust previous comment about addingTransitionManager.seekTo()toTransitionManager.createSeekController(). (Idbeb1) - Added
ExerciseRouteResult, which is not the superclass forData,NoDataandConsentRequiredStates. AddedExerciseRouteas a standalone class, which holds location data for the route. (I22eed) - Introduced
PagerLayoutInfowith information collected after a measure pass in Pager. Also introduced PageInfo, the information about a single measured Page in Pager. (Iad003, b/283098900)
Bug Fixes
- We have updated the colors for
Button,IconButtonandTextButtonin line with Material3 design. The semantic role forButton,IconButtonandTextButtoncan now be overridden usingModifier.semantics. (Ib2495) - Fixed
EmojiPickerView’s tab selection and indicator updates one click behind. (I4db04) FileNotFoundExceptionon showing the emoji picker (I353e4)- Catch the
WindowManager.BadTokenExceptionwhen usingEmojiPickerView(I0a144)
Fragment: v1.6.1
July 26, 2023
androidx.fragment:fragment-*:1.6.1 is released. Version 1.6.1 contains these commits.
Bug Fixes
- Fixed an issue where the saved state stored when the activity was stopped but not destroyed would be incorrectly cached even after the fragment instance was moved back to the
RESUMEDstate. This would cause that cached state to be reused if that fragment instance was on the back stack when using the multiple back stacks API to save and restore that fragment. (I71288, b/246289075)
Dependency Update
- Fragment now depends on Activity 1.7.2. This fixes an issue where Kotlin users could not extend
ComponentDialogwithout an explicit dependency on Activity. (b/287509323)
Games-Memory-Advice version 2.1 Games-Activity: v2.1.0-alpha01
July 26, 2023 androidx.games:games-memory-advice:2.1.0-alpha01 is released. Version 2.1.0-alpha01 contains these commits.
API Changes
- Add
GetAvailableMemoryfunction
Bug Fixes
- Update Memory Advice model
- Fix shared
memory_advicebuild target
Games-Memory-Advice version 2.0.0: v2.0.0-rc01
July 26, 2023
androidx.games:games-memory-advice:2.0.0-rc01 is released. Version 2.0.0-rc01 contains these commits.
New Features
- Included a new model to better predict remaining memory.
Bug Fixes
- Fixed Memory Advice not working with a shared STL.
Glance: v1.0.0-rc01
July 26, 2023
androidx.glance:glance-*:1.0.0-rc01 is released. Version 1.0.0-rc01 contains these commits.
Moves Glance to rc01 on the way to stable release for 1.0.0.
New Features
- Adds key parameters to action lambdas for more stable action invocation.
- Adds the ability to provide to
ActvityOptionstostartActivityactions. - Adds support for Android 14
API Changes
- Added an optional key parameter for all elements that accept lambdas. (Id96c1, b/282445798)
- Add support for setting
ActivityOptionsbundle foractionStartActivity(I6a08d) - Merged public and experimental API files for d,e,f,g-paths (I03646, b/278769092)
- N/A, API file changes are just reordering methods (I5fa95)
- Add API for setting
CoroutineContextforGlanceAppWidgetReceiverrequests (I0a100) - Added a new API to provide
ActivityOptionsforLazyColumnandLazyVerticalGridthat will be used for all actions in the list.(Id8d71)
Bug Fixes
- N/A, API file changes are just reordering methods (I5fa95)
- Glance text component style demo (Ie78a4)
Health Services Client: v1.0.0-rc01
July 26, 2023
androidx.health:health-services-client:1.0.0-rc01 is released. Version 1.0.0-rc01 contains these commits.
New Features
- Health Services has moved to 1.0.0-rc01 after stabilizing in beta.
API Changes
- Merged public and experimental API files for h- thru m-paths. (Ic4630, b/278769092)
- N/A, API file changes are just reordering methods. (I5fa95)
Health Connect: v1.1.0-alpha03
July 26, 2023
androidx.health.connect:connect-client:1.1.0-alpha03 is released. Version 1.1.0-alpha03 contains these commits.
New Features
- API for reading and writing Exercise routes:
- Added
ExerciseRouteResulttoExerciseSessionRecord - Added
ExerciseRouteRequestContract
- Added
API Changes
- Added
ExerciseRouteResultand its subclasses:Data,NoDataandConsentRequiredStates. - Added
ExerciseRouteas a standalone class, which holds location data for the route. (I22eed) - Added
PERMISSION_WRITE_EXERCISE_ROUTE. (I92fc4) - Added
ExerciseRouteRequestContract, addedHealthPermissionsRequestContract. (Ief0e5)
Bug Fixes
- Fixed construction of Energy in kilojoules (Ie8791)
Heifwriter: v1.1.0-alpha02
July 26, 2023
androidx.heifwriter:heifwriter:1.1.0-alpha02 is released. Version 1.1.0-alpha02 contains these commits.
New Features
- 10-bit encoding support
- AVIF encoding support
Bug Fixes
- Include experimental APIs in current.txt (I1a07e, b/278769092)
- N/A, API file changes are just reordering methods (I5fa95)
- API lint check for
MissingGetterMatchingBuilderis enabled for androidx (I4bbea, b/138602561)
input: v1.0.0-beta02
July 26, 2023
androidx.input:input-motionprediction:1.0.0-beta02 is released. Version 1.0.0-beta02 contains these commits.
New Features
- Add support for Android U system prediction API (I7261f)
API Changes
- Merged public and experimental API files for h- thru m-paths (Ic4630, b/278769092)
Bug Fixes
- Predicted motion events now report the correct down and event time (I40059)
Lifecycle: v2.7.0-alpha01
July 26, 2023
androidx.lifecycle:lifecycle-*:2.7.0-alpha01 is released. Version 2.7.0-alpha01 contains these commits.
API Changes
Lifecycle.Stateis now Compose-observable viaLifecycle.currentStateFlow, which returns aStateFlowwhere thevalueis the currentLifecycle.State. (Ib212d, b/209684871)Lifecycle.Events can now able to be observed as aFlowwithLifecycle.asFlow().(If2c0f, b/176311030)LifecycleResumeEffectAPI has been added to run ComposeSideEffects based on bothLifecycle.Event.ON_RESUMEandLifecycle.Event.ON_PAUSEevent callbacks. (I60386, b/235529345)LifecycleStartEffectAPI has been added to run ComposeSideEffects based onLifecycle.Event.ON_STARTandLifecycle.Event.ON_STOPevent callbacks. (I5a8d1, b/235529345)LifecycleEventEffectAPI has been added to run ComposeSideEffects based onLifecycle.Event. (Ic9794, b/235529345)Lifecycle.collectAsState()extension has been added to directly exposeLifecycle.Stateas ComposeState. This is equivalent (and a shorter alternative) tolifecycle.currentStateFlow.collectAsState(). (I11015, b/235529345)
Bug Fixes
- The
LiveData.distinctUntilChanged()extension now sets thevalueof the returnedLiveDataif the previousLiveDatahas had a value set on it. This does not change the observation behavior - updated values from the sourceLiveDatawill still only apply once you start observing theLiveDatareturned fromdistinctUntilChanged(). (Ib482f) - The proguard keep rules associated with
LifecycleObserverhave been removed. This means that proguarded code that wishes to use APIs via reflection will need to provide their own keep rules for their specific use case. (Ia12fd)
Navigation: v2.7.0-rc01
July 26, 2023
androidx.navigation:navigation-*:2.7.0-rc01 is released. Version 2.7.0-rc01 contains these commits.
Bug Fixes
- Fixed an issue where the
EnterTransitionandExitTransitionlambdas created as part of theNavHostcould potentially remain in memory even after theNavHostis removed from composition. (I893d0)
Known Issues
- There is an issue from Navigation 2.6.x that when navigating with popUpTo it is possible to cause an
IllegalArgumentException. It is possible that this exception can be avoided by restructuring your graph, similar to the advice suggested here. (b/287133013)
Paging: v3.2.0
July 26, 2023
androidx.paging:paging-*:3.2.0 is released. Version 3.2.0 contains these commits.
Important changes since 3.1.0
- Paging Compose reached API stability and has been merged back into the rest of Paging where its version now matches all the other Paging artfacts. Changes since 3.1.0 include:
- Support for previewing a list of fake data by creating a
PagingData.from(fakeData)and wrapping thatPagingDatain aMutableStateFlow(e.g.MutableStateFlow(PagingData.from(listOf(1, 2, 3)))). Pass this flow into@Previewcomposables as receiver forcollectAsLazyPagingItems()to preview. - Support for all lazy layouts such as
LazyVerticalGridandHorizontalPageras well as custom lazy components from Wear and TV libraries. This was achieved through new lower levelLazyPagingItemsextension methodsitemKeyanditemContentType, which helps you implement thekeyandcontentTypeparameters to the standarditemsAPIs that already exist forLazyColumn,LazyVerticalGridas well as their equivalents in APIs likeHorizontalPager. items(lazyPagingItems)anditemsIndexed(lazyPagingItems)which only supportsLazyListScopewere deprecated.
- Support for previewing a list of fake data by creating a
- New
paging-testingartifact which provides APIs designed around unit testing each layer of your app and its integration with Paging in isolation. For example, it includesTestPagerclass that allows you to validate the behavior of your own customPagingSourceimplementation independently from the Pager and real UI.-
asPagingSourceFactoryAPIs to transform either aFlow<List<Value>>or a staticList<Value>into aPagingSourceFactorythat can be passed to a Pager in tests asSnapshotKotlin extension onFlow<PagingData<Value>>, which translates theFlow<PagingData<Value>>into a directList<Value>. TheasSnapshot lambdaallows you to mimic the UI of your app via APIs such asscrollToorappendScrollWhileso that you can verify the snapshot of data is correct at any point in your set of paged data.
- Added default logs to expose Paging debugging information in two levels:
VERBOSEandDEBUG. The logs can be enabled via the commandadb shell setprop log.tag.Paging [DEBUG|VERBOSE]. This applies to both Paging with views or Paging with Compose. - Added constructors for
PagingDataAdapterandAsyncPagingDataDifferwhich acceptCoroutineContextinstead ofCoroutineDispatcher. - Added a new
PagingSourceFactoryfunctional interface that provides a more explicit API surface than the previous () ->PagingSourcelambdas. This factory can be used to instantiate a Pager.
Preference: v1.2.1
July 26, 2023
androidx.preference:preference:1.2.1 is released. Version 1.2.1 contains these commits.
Bug Fixes
PreferenceHeaderFragmentCompatnow correctly handles the system back button when used within aComponentDialogor when using libraries like Hilt's@AndroidEntryPointthat wrap the Fragment'sContext.- Preference now depends on Activity 1.5.1. (Ie5d22)
PreferenceHeaderFragmentCompat.onCreateInitialDetailFragmentnow propagatesheader.extrasas theFragmentarguments.
privacysandbox sdkruntime: v1.0.0-alpha07
July 26, 2023
androidx.privacysandbox.sdkruntime:sdkruntime-client:1.0.0-alpha07 and androidx.privacysandbox.sdkruntime:sdkruntime-core:1.0.0-alpha07 are released. Version 1.0.0-alpha07 contains these commits.
New Features
- Per-SDK
SharedPreferencessupport for SDKs loaded locally (in Application process).SandboxedSdkProviderCompat#contextcustomized to provide Per-SDKSharedPreferencessupport for SDKs in backcompat mode.
Recyclerview: v1.3.1
July 26, 2023
androidx.recyclerview:recyclerview:1.3.1 is released, with no changes since 1.3.1-rc01. Version 1.3.1 contains these commits.
For release notes of previous release, refer to our Release Notes page
Test Uiautomator: v2.3.0-alpha04
July 26, 2023
androidx.test.uiautomator:uiautomator:2.3.0-alpha04 is released. Version 2.3.0-alpha04 contains these commits.
API Changes
- Added
By.hasParentandBy.hasAncestorto support finding objects according to their parents (I93c36). - Added
UiObject2#getHintto retrieve an object's hint text, andBy.hintmethods to select objects according to their hint text (Idd345). - Added
By.displayIdto support selecting objects according to the display they are on (I1825b). - Added
UiDevice#getDisplayHeight(int)andUiDevice#getDisplayWidth(int)methods to find the dimensions of a display by its ID (Ie6544). - Re-added
wait(SearchCondition, long)andwait(UiObject2Condition, long)methods for backwards compatibility (Iebfda). - Changed
UiDevice#executeShellCommandto public but discouraged instead of hidden (Ic48a1).
Bug Fixes
- Updated
MotionEventinjection to reduce flakiness by prioritizing gesture accuracy over speed (678ca3). - Added tracing to resource heavy methods to identify performance bottlenecks (d17de3).
- Added a retry mechanism when initiating a UiAutomation connection (048caf).
- Fixed a possible NPE from null nodes in
UiDevice#dumpWindowHierarchy(b725eb). - Fixed unexpected errors from querying or operating on private displays (985db6, 7053d4).
tv: v1.0.0-alpha08
July 26, 2023
androidx.tv:tv-foundation:1.0.0-alpha08 and androidx.tv:tv-material:1.0.0-alpha08 are released. Version 1.0.0-alpha08 contains these commits.
New Features
- Introduce Chip components for Compose for TV material. (I86da4)
- Add
ListItemcomponent to TV Compose Material. (I3f0b3) - Add
DenseListItemcomponent to TV Compose Material. (I536bf)
API Changes
- Marked public tv-material APIs as Experimental. (I632e7)
- Introduced
TabRowScopeto share state fromTabRowcomposable with Tab composable and renamedTabColorsproperties. (Ief587)
Wear Compose: v1.3.0-alpha02
July 26, 2023
androidx.wear.compose:compose-*:1.3.0-alpha02 is released. Version 1.3.0-alpha02 contains these commits.
API Changes
- We have provided
ExpandableStateMapping, a new way to generateExpandableStates, for cases in which they need to be created on demand, not necessarily within a@Composablescope (Iff9e0) SwipeToDismissBoxhas been migrated fromandroidx.wear.compose.materialtoandroidx.wear.compose.foundationpackage. (I275fb)- Updated API files to annotate compatibility suppression. (I8e87a, b/287516207)
- We have made the height constants for
Chip,CompactChipandToggleChippublic (Idbfde) - We have made the horizontal and vertical paddings for
ChipandCompactChippublic. (Ieeaf7) - Added functionality to turn off swipe handling in
SwipeDismissableNavHostvia the newuserSwipeEnabledparameter. (Id2a0b, b/230865655) - We have updated the Wear Compose Navigation library to use the new
SwipeToDismissBoxfrom Wear Compose Foundation. (I4ff8e)
Bug Fixes
- We have fixed a z-order bug where
expandedItemdid not show the correct content after clicking a button's behavior when they have buttons. (I1899d, b/289991514) - Improve focus handling of
SwipeToDismissBox(and henceSwipeDismissableNavHost) using theHierarchicalFocusCoordinator(I45362, b/277852486) - We have made a fix to the gesture handling in
SwipeableV2. (I89737) - We have finalized the baseline profiles for our 1.2 release. (Id5740)
- Following the migration of
SwipeToDismissBoxto Foundation, the MaterialSwipeToDismissBoximplementation now forwards to Foundation and supplies default color values from its theme.(If8451) - We have added heading semantics to
ListHeader. (Ic5420) ChipandToggleChipwill now adjust their height to accommodate content that has grown due to large fonts for accessibility, when required. (Iaf302)- Fixed a bug in the semantic role of
SplitToggleChip’s tappable area, for accessibility. (Ieed3a) - The reduce motion setting now turns off the shimmering effect and wipe-off motion on placeholders. (I91046)
StepperandInlineSlidernow support repeated clicks on long press so that you can quickly increase/decrease value ofStepperandInlineSliderby holding the + or - buttons. (I27359)
Wear Compose Material3: v1.0.0-alpha08
July 26, 2023
androidx.wear.compose:compose-material3:1.0.0-alpha08 is released. Version 1.0.0-alpha08 contains these commits.
New Features
- We have added the following selection controls for Material3 -
Switch,Checkbox,RadioButton. (Ib918c) - We have added
IconToggleButtonandTextToggleButtonto Material3, a circular toggle button with a single slot for icon and text respectively. For different sizes ofToggleButton, we recommend usingModifier.touchTargetAwareSizewith the sizes provided in respective toggle buttons. (I9f015) - We have added
ListHeaderandListSubheaderto our Material3 components. (Ibaefe) - We have added Material3
SwipeToDismissBox, which calls the new FoundationSwipeToDismissBoxand supplies default color values from its theme. (I275fb) - We have added the Material3
InlineSliderto Wear Compose. It allows users to make a selection from a range of values. The range of selections is shown as a bar between the minimum and maximum values of the range, from which users may select a single value.InlineSlideris ideal for adjusting settings such as volume or brightness. (I7085f)
API Changes
- We have updated the Shapes in Wear Material 3 theme to use
RoundedCornerShapebased instead of Shape. (Idb133) - We have made the height constants for Button public (Idbfde)
- Updated API files to annotate compatibility suppression (I8e87a, b/287516207)
- We have updated
InlineSliderColorsin Wear Compose Material 3 to have public constructor and public properties. (I6b632) - We have updated all color classes in Wear Compose Material 3 to have public constructors and public properties. (I17702)
- We have made Button horizontal and vertical padding constants public. (Ieeaf7)
Bug Fixes
- Button will now adjust its height to accommodate content that has grown due to large fonts for accessibility, when required (Iaf302)
- We have updated a number of Button demos to address accessibility issues. (I61ce9)
StepperandInlineSlidernow support repeated clicks on long press so that you can quickly increase/decrease value ofStepperandInlineSliderby holding the + or - buttons (I27359)
Wear Compose: v1.2.0-rc01
July 26, 2023
androidx.wear.compose:compose-*:1.2.0-rc01 is released. Version 1.2.0-rc01 contains these commits.
Bug Fixes
- We have finalized the baseline profiles for our 1.2 release (Id5740)
wear protolayout: v1.0.0-rc01
July 26, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-rc01 is released. Version 1.0.0-rc01 contains these commits.
- To migrate from Tiles to
ProtoLayout, please follow the instructions here.
API Changes
- We have removed
setLayoutConstraintForDynamicAnchorAngleandgetLayoutConstraintForDynamicAnchorAnglemethods from Arc element. These methods have been added by mistake and they didn't have any effect on the provided layout. (If7d01) - We have limited the maximum depth that a
ProtoLayout’s layout can have to 30 nestedLayoutElements. (I8a74b)
Bug Fixes
- We have added a check to throw if
DynamicColorhas been set for aSpanText. (I0e5bc) - It is clarified that
DAILY_CALORIESdata source unit is kcal. (Iaa785)
Wear Tiles: v1.2.0-rc01
July 26, 2023
androidx.wear.tiles:tiles-*:1.2.0-rc01 is released. Version 1.2.0-rc01 contains these commits.
With the v1.2 release, Tiles library has been refactored and the majority of the features and APIs are moved into new ProtoLayout library (package
androidx.wear.protolayout) with a small subset remaining in Tiles (androidx.wear.tiles):- All classes names have stayed the same, there are only additions to the v1.1
- The majority of the APIs have stayed the same and the only change is package name.
- Some of the methods in
TileService/TileBuilderhave been deprecated and now have renamed versions that accept newProtoLayouttypes instead of deprecated Tiles one.
To make this migration easier, we have put together a small instructions and script that does this renaming, see here.
API Changes
- We have limited the maximum depth that a layout can have to 30 nested elements in tile. If that depth is exceeded, the tile renderer will show a previously inflated layout. (I8a74b)
Webkit: v1.8.0-beta01
July 26, 2023
androidx.webkit:webkit:1.8.0-beta01 is released with no changes since 1.8.0-alpha01. Version 1.8.0-beta01 contains these commits.
WindowManager: v1.2.0-beta01
July 26, 2023
androidx.window:window-*:1.2.0-beta01 is released. Version 1.2.0-beta01 contains these commits.
New Features
- Expose experimental window APIs for accessing the rear screen.
- Test APIs for creating a
FoldingFeatureis now stable. - Test APIs for setting up fake
ActivityEmbeddingvalues are now stable. WindowLayoutInfoPublisherRulenow reports the override when obtaining a value from aUiContext.WindowInfoTrackerreports folding feature data toUiContextparameters.
API Changes
- Marks
WindowAreaAPI's as experimental to allow API changes to continue for a stable release in 1.3 (I857f5) - Updated API files to annotate compatibility suppression (I8e87a, b/287516207)
WorkManager: v2.9.0-alpha02
July 26, 2023
androidx.work:work-*:2.9.0-alpha02 is released. Version 2.9.0-alpha02 contains these commits.
New Features
- Now
WorkManagerprovides a hint on why a worker was previously stopped. It can be queried from a worker itself viagetStopReason()method or fromWorkInfoviagetStopReason().
API Changes
stopReasonwas added toWorkInfo. It makes availablestopReasonafter the worker ran. It could be helpful in the reportingstopReasonin usable way, because once a worker has been stopped, an app itself could be very quickly killed. (I21386)- Allow Clock to be set via config and used to drive execution sequencing of Worker tests. (Ic586e)
getStopReason()method was added toListenableWorkerthat gives a hint why the worker was stopped. (I07060)- Added
WorkManagerTestInitHelper#closeWorkDatabase()to avoid Closeguard's warning about leaked resources. (Ia8d49)
Bug Fixes
- Added ability to bypass
overrideNextScheduleTimeusingTestDriverand fixed issues with testability. (Ic2905)