2023-05-10
Activity: v1.8.0-alpha04
May 10, 2023
androidx.activity:activity:1.8.0-alpha04, androidx.activity:activity-compose:1.8.0-alpha04, and androidx.activity:activity-ktx:1.8.0-alpha04 are released. This was released from an internal branch.
Bug Fixes
- From Activity 1.7.1: - The
ReportFullyDrawExecuterno longer leaks when usingComponentActivitywithActivityScenario. (Id2ff2, b/277434271)
Compose Animation: v1.5.0-alpha04
May 10, 2023
androidx.compose.animation:animation-*:1.5.0-alpha04 is released. Version 1.5.0-alpha04 contains these commits.
API Changes
ContentKeyis now supported inAnimatedContentto allow more control for when transition should happen. (Ic069b)
Compose Foundation: v1.5.0-alpha04
May 10, 2023
androidx.compose.foundation:foundation:1.5.0-alpha04 and androidx.compose.foundation:foundation-layout:1.5.0-alpha04 are released. Version 1.5.0-alpha04 contains these commits.
API Changes
- Added optimized
TextStyle.merge(...)with full parameter list. (Iad234, b/246961787) - Introduce a
SnapLayoutInfoProviderthat can be used withLazyGridState. (I92134, b/269237141, b/260914964) - Experimental
Modifier.animateItemPlacement()was added for the lazy staggered grids item scope. You can apply it on the items in order to achieve the automation position change/reordering animations. (I4b62d, b/257034719) - Promote
GridCells.FixedSizeto stable.FixedSizedefines aLazyGridwhere each cell takes exact size on cross axis, with the remaining space distributed by cross axis arrangement. (I8542f) - Introduced receiver scope
PagerScopefor Pager and an utility function for calculation a given page offset. (If2577) - Introduce the
snapPositionalThresholdwhen creating a snap fling behavior. Use this parameter to specify a positional threshold to short snapping in Pager. (If8f7f) - Replaced
SnapLayoutInfoProvider.calculateSnappingOffsetBoundswithcalculateSnappingOffset. In this new method we simply request the next offset to snap to. The calculation of the bounds should be performed at the implementation level as this may differ depending on how one needs snapping to happen. (I923a4) LazyStaggeredGridAPIs have been promoted to stable. (I633a5)- Remove
pageCountfromHorizontal/VerticalPager. This should be provided at the state creation. UpdatedPagerStateandrememberPagerStateto accept thepageCount. (Ieb52d, b/266965072) - Remove
pageCountfromHorizontal/VerticalPager. This should be provided at the state creation. UpdatedPagerStateandrememberPagerStateto accept thepageCount. (Ifa3cb, b/266965072) - Introduce
shortSnapVelocityThresholdin Pager'sSnapFlingBehavior. (I7379e, b/275579012) - Adds a
FlowRowScopeandFlowColumnScope. (I54fe2)
Bug Fixes
- Calls to get semantics on Text when constraints have
minWidthandminHeightno longer crash. (Ibd072) - Fixed regression where keyboard wasn't showing for text fields inside dialogs not created by the
Dialogcomposable. (I82551, b/262140644)
Compose Material: v1.5.0-alpha04
May 10, 2023
androidx.compose.material:material-*:1.5.0-alpha04 is released. Version 1.5.0-alpha04 contains these commits.
API Changes
- We are moving the density dependency to the component level. This applies to the following components:
BottomDrawer,ModalBottomSheetLayout,BottomSheetScaffold,Switch,ModalDrawer. Please use the new overload provided where density is a parameter. (I8fbd8)
Compose Material 3: v1.1.0
May 10, 2023
androidx.compose.material3:material3:1.1.0 and androidx.compose.material3:material3-window-size-class:1.1.0 are released. Version 1.1.0 contains these commits.
Major features of 1.1.0
New Material Design 3 components
Enhancements to existing Material Design 3 components.
Promoted experimental APIs to stable!
Please see this blog post for more details!
Compose Material 3: v1.2.0-alpha01
May 10, 2023
androidx.compose.material3:material3:1.2.0-alpha01 and androidx.compose.material3:material3-window-size-class:1.2.0-alpha01 are released. Version 1.2.0-alpha01 contains these commits.
Compose Runtime: v1.5.0-alpha04
May 10, 2023
androidx.compose.runtime:runtime-*:1.5.0-alpha04 is released. Version 1.5.0-alpha04 contains these commits.
API Changes
- Added primitive versions of the
StateAPI, allowing Int, Long, Float, and Double values to be tracked inStateobjects without incurring penalties for autoboxing. Use the new factory methodsmutableIntState(Int),mutableFloatStateOf(Float), etc in order to use these. (I48e43)
Bug Fixes
Call
onEndChangesduring composition dispose. Focus nodes removed duringComposition.disposeare subscribing toonEndChangesto reset focus.(03d4a47)Ensure invalidation for non-initialized derived state values. Each derived state is associated with a list of its dependencies in
SnapshotStateObserver, used to invalidate scopes associated with derived state whenever dependency changes. The dependency change is registered on snapshot advance, which can happen after derived state read (due to the call toSnapshot.notifyObjectsInitialized()).Previous derived state observation logic in
SnapshotStateObserverwas cleaning up old dependencies, then reading new value. This resulted in a race condition with invalidation happening in a cleaned up state, where dependency invalidation wasn't registered.This change reorders derived state read and dependency cleanup, ensuring that invalidation always happens in a valid state. (c472be6)
Compose UI: v1.5.0-alpha04
May 10, 2023
androidx.compose.ui:ui-*:1.5.0-alpha04 is released. Version 1.5.0-alpha04 contains these commits.
New Features
Modifier.NodeDelegation Improvements Added an enhanced ability to delegate to otherModifier.Nodeinstances from aDelegatingNode. This can be done with thedelegateandundelegateAPIs. Prior to this change, every API from the delegating node needed to be delegated explicitly to the delegated node. After this change, node interfaces will get delegated implicitly unless theDelegatingNodeis explicitly overriding them. (67352bc)
API Changes
- Introduce
NestedScrollModifierNode, aNestedScroll Modifier.Nodethat can be delegated to. (I69513) - Added
onResetandonReleaseparameters to theAndroidViewBindingcomposable, mirroring theAndroidViewcomposable and enabling support for View reuse withViewBinding. (I00b1e, b/276802519) - Updated Compose Path API to support rewind operations to support usecases of frequent Path manipulation with faster re-use. (I7b797)
- Added optimized
TextStyle.merge(...)with full parameter list. (Iad234, b/246961787) - Stabilized many Text APIs that include
Brush,DrawStyle,TextMotion,DrawScope.drawText,Paragraph.paint(Brush),MultiParagraph.paint(Brush). (I2f740, b/261581564, b/261581931, b/261561245) PlatformTextStyle.includeFontPaddingis undeprecated. Our original intent was to remove the field, however the feedback shows that developers need this configuration option. Therefore removing deprecation from the field (I98e96, b/277703184)
Bug Fixes
- Fixed regression where keyboard wasn't showing for text fields inside dialogs not created by the
Dialogcomposable. (I82551, b/262140644)
Core and Core-ktx: v1.10.1
May 10, 2023
androidx.core:core:1.10.1 and androidx.core:core-ktx:1.10.1 are released. Version 1.10.1 contains these commits.
External Contribution
- Fix
BadParcelableExceptionbeing thrown for result being null b/277434277, b/278118318 contributed by Mygod Studio
Core and Core-ktx: v1.11.0-alpha04
May 10, 2023
androidx.core:core:1.11.0-alpha04, androidx.core:core-ktx:1.11.0-alpha04, and androidx.core:core-testing:1.11.0-alpha04 are released. Version 1.11.0-alpha04 contains these commits.
API Changes
- Added
LinkMovementMethodCompatthat fixes link touch handling (Ia632c) PendingIntent.getBroadcast()is now correctly marked@Nullable(Ifff96, b/277630907)
Bug Fixes
- Fixed Context leak in
DisplayManagerCompat(I3409b, b/279625765) - Added a
SoftwareKeyboardControllerCompatto provide direct methods to show and hide the software keyboard given a View. This backports workarounds for known issues when using theWindowInsetsControllerAPIs on some API levels, and is the extraction of the backing implementation forWindowInsetsControllerCompat.showand hide for the IME inset types. (Idd0a3)
Core Remote Views: v1.0.0-beta04
May 10, 2023
androidx.core:core-remoteviews:1.0.0-beta04 is released. Version 1.0.0-beta04 contains these commits.
Bug Fixes
- Fixes
ArrayOutOfBoundsExceptionbeing thrown in corner cases in compat library.
Core and Core-ktx: v1.12.0-alpha04
May 10, 2023
androidx.core:core:1.12.0-alpha04, androidx.core:core-ktx:1.12.0-alpha04, and androidx.core:core-testing:1.12.0-alpha04 are released. This was released from an internal branch.
Core: v1.0.0-alpha01
May 10, 2023
androidx.core:core-telecom:1.0.0-alpha01 is released. This version is developed in an internal branch and should be used with Android 14 Beta 2.
New Features
Introduces the
CallsManagerAPI which VoIP apps can use for integrating with the Telecom framework on a device. Calls notified to the platform benefit from foreground execution priority, visibility on Bluetooth, wearable and automotive devices, and simplified audio routing.The
CallsManagerAPI wraps the legacyConnectionServiceAPI for devices running older versions of Android.
credentials: v1.2.0-alpha04
May 10, 2023
androidx.credentials:credentials:1.2.0-alpha04 and androidx.credentials:credentials-play-services-auth:1.2.0-alpha04 are released. This version is developed in an internal branch.
Emoji2: v1.4.0-beta03
May 10, 2023
androidx.emoji2:emoji2-*:1.4.0-beta03 is released. Version 1.4.0-beta03 contains these commits.
Bug Fixes
- Fix emoji picker nested popup view crash. (0acc8e)
- Throw early exceptions in the
EmojiCompat getEmojiStart/getEmojiEnd. (26177f)
Fragment: v1.6.0-rc01
May 10, 2023
androidx.fragment:fragment-*:1.6.0-rc01 is released. Version 1.6.0-rc01 contains these commits.
Bug Fixes
- Fixed as issue causing
ActivityResults to be sent with the incorrect request code when multiplestartActivityForResultrequests have been made consecutively. (If0b9d, b/249519359) - Fixed an issue where the
onBackStackChangeListenercallbacks were being dispatched for transactions that did not actually change the back stack if they were mixed in with transactions that do. (I0eb5c, b/279306628)
Glance: v1.0.0-beta01
May 10, 2023
androidx.glance:glance-*:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits.
New Features
- Moves the library into beta.
- Support for themeing using
GlanceTheme, adds glance-material and glance-material3 modules to support material 2 and material 3 style themes in Glance. - Support for
FontFamilyadded to text apis. - Moved
GlanceAppWidgetto aWorkManagersession based update mechanism. Users of Glance forAppWidgetsshould now overrideGlanceAppWidget.provideGlanceinstead of the oldContentmethod. As this now happens in a worker, this is now a good place to load resources, database or network items without having to have a separate worker.
API Changes
- Added
*DefaultsAPI forButton,Checkbox,RadioButtonandSwitch. It brings glance closer in line with the patterns of Jetpack Compose. (I94828) - New Glance templates module (I94459)
- Making
ResourceColorProviderinternal to module. Breaking change. Needed becauseResourceColorProvidershould only be used for dynamic theming to avoid situations where some colors are dynamic resources and some are fully resolved. (Ib0db7) - Adds
FontFamilyas an option forTextStyle. (Ic19ba, b/274179837) - Value parameter name for
Enum.valueOfchanged (Ia9b89) - More thrown exceptions from enum
valueOf(I818fe) - Updated
GlanceAppWidgetto useprovideGlanceas the main entrypoint.GlanceAppWidget.Contentis now deprecated. (I202b5) - Adds an option to supply tint color for images (I26192, b/212418562)
- More return type nullability of deprecated-hidden functions. (Ibf7b0)
- Adding
@JvmDefaultWithCompatibilityannotation (I8f206) - Removed the unused
SingleEntityTemplateData.displayHeader. (I7f094) - Added support for using lambdas as callbacks (Ia0bbd)
- Moved
DayNightColorProviderto glance module (I1842c, b/256934779) - Removes
LocalColorProviderfrom Templates. Templates will now useGlanceTheme.colors(Ic15e2) - Removed nullability from
Text(style: TextStyle)(I7123b, b/237012816) - Default text color to black. remove nullability (I3072c, b/237012816)
- Making dynamic theme
ColorProvidersits own object. MakingResourceColorProviderinternal to the module. (Id0e2d, b/237012816) - Add the Undefined category to
ImageSize. (I2fa39) - Remove deprecated
GlanceAppWidget.Contentfunction (Ib05f6) - Adds modifier as a parameter to
AndroidRemoteViews. (I515d4) - Add
GlanceAppWidget.composeto make unit testing easier (Ie9b28)
Bug Fixes
- Added a demo widget for Glance text fonts (I5c3d7)
- Makes
AndroidRemoteViewssizable with Modifier. - Issues with inconsistent theme colors resolved
- All resources now prefixed to avoid collisions
Navigation: v2.6.0-rc01
May 10, 2023
androidx.navigation:navigation-*:2.6.0-rc01 is released. Version 2.6.0-rc01 contains these commits.
Bug Fixes
- Fixed an issue in Navigation with fragments where removing a fragment via navigate with
popUpToin itsonResume()lifecycle callback would cause anIllegalStateException. (I21884, b/279644470)
privacysandbox ads: v1.0.0-beta04
May 10, 2023
androidx.privacysandbox.ads:ads-adservices:1.0.0-beta04 and androidx.privacysandbox.ads:ads-adservices-java:1.0.0-beta04 are released. Version 1.0.0-beta04 contains these commits.
Bug Fixes
- Resolve deadlock issue when adservices measurement APIs are invoked on main thread by the caller. (I65361)
privacysandbox sdkruntime: v1.0.0-alpha04
May 10, 2023
androidx.privacysandbox.sdkruntime:sdkruntime-client:1.0.0-alpha04 and androidx.privacysandbox.sdkruntime:sdkruntime-core:1.0.0-alpha04 are released. This version is developed in an internal branch.
New Features
- Initial support for starting Activities inside SDK sandbox (available for UDC+ devices): SDK need to register handler by calling
SdkSandboxControllerCompat#registerSdkSandboxActivityHandlerthen App could start Activity for SDK by callingSdkSandboxManagerCompat#startSdkSandboxActivity.
Transition: v1.5.0-alpha01
May 10, 2023
androidx.transition:transition:1.5.0-alpha01 and androidx.transition:transition-ktx:1.5.0-alpha01 are released. This version is developed in an internal branch.
New Features
- Transitions support seeking on API 34 and above. A new API was added to
TransitionManager,controlDelayedTransition(), which returns aTransisionSeekControllerthat allows seeking the Transition.
API Changes
TransitionManagerhas a new method,controlDelayedTransition(), that allows applications to control the progress of transition animations on API 34+. The returnedTransitionSeekControllerlets the developer know when the transition is ready for seeking, the duration of the animation, and allows setting the current time of the animation. Only Transitions that overrideisSeekable()to return true are supported bycontrolDelayedTransition().- Transitions have a new method,
getRootTransition(), that returns the Transition containing the current Transition or the current Transition if it isn't contained by any other Transition. This can be useful if the developer needs to have listeners for when the entire Transition starts or ends. TransitionListenersnow have newonTransitionStart()andonTransitionEnd()listeners that allow the developer to know whether the transition is starting or ending going in reverse or not. This can be important for developing seekable transitions that haveTransitionListeners.
Bug Fixes
- Transitions now copy their
TransitionListenerswhen they are cloned. This means that adding new listeners duringcreateAnimator()will not affect the root Transition.
Wear Compose: v1.2.0-alpha10
May 10, 2023
androidx.wear.compose:compose-*:1.2.0-alpha10 is released. Version 1.2.0-alpha10 contains these commits.
New Features
- We have added support for Swipe to Reveal, as a means to access secondary actions. This pattern supplements the ‘long press’ pattern, the existing way a user could reveal (different) secondary actions. (I60862)
API Changes
- We have added
RevealScopeto action composables inSwipeToReveal, which gives access to the offset at which additional actions are revealed. (I3fd56)
Bug Fixes
- Fixed an issue with
ScalingLazyColumnbeing stuck on Wear API 33 after fling (Ic4599) - We have made some performance improvements to
PositionIndicatorfor jank reduction. (I35e92) - We have fixed a bug in Chip and
CompactChipwhere the semantic role was no longer being set toRole.Button. (I93f91, b/277326264)
Known Issues
We have identified a bug in Android Studio which causes failure in rendering preview when annotated with @WearPreviewDevices and @WearPreviewFontScales - a fix is planned for release soon. Please note that the other wear preview annotations work as intended in Android Studio Giraffe 2022.3.1 and beyond.
In version 1.2.0-alpha07 we added DefaultTextStyle to Wear Compose, maintaining the existing PlatformTextStyle.includeFontPadding value as true - for background, see Fix font padding in Compose. We will be changing the DefaultTextStyle to turn off font padding in an early 1.3 alpha version, to be consistent across the Android Platform. This will address some cases of text clipping with large font sizes and may also impact screen layouts, so that screenshot tests need updating. For example, with large font sizes we see text clipping here:
- It is no longer present when font padding is turned off:
The new setting can be adopted now by overriding the typography in your theme - see example code.
Wear Compose Material3: v1.0.0-alpha04
May 10, 2023
androidx.wear.compose:compose-material3:1.0.0-alpha04 is released. Version 1.0.0-alpha04 contains these commits.
New Features
- We have added
IconButtonto Material3, a circular button with a single slot for icon/image. There are four variations:IconButton,FilledIconButton,FilledTonalIconButtonandOutlinedIconButton. For different sizes ofIconButton, we recommend usingModifier.touchTargetAwareSizeandExtraSmallButtonSize,SmallButtonSize,DefaultButtonSizeandLargeButtonSizeIconprovided inIconButtonDefaults. We also provideIconButtonDefaults.iconSizeForto determine the recommended icon size for a given button size. (I721d4)
wear protolayout: v1.0.0-alpha09
May 10, 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits.
New Features
- We've added an experimental extension layout element. Note that this can't be used by default and requires a renderer extension capable of understanding the layout element. (I6581d)
- Added
StrokeCapsupport forArcLine. (I94951) - Added support for Conditional Instant operation. (I489a7)
- Added support for Conditional Duration operation. (Iab469)
- Added support for creating duration from seconds. (Ib5fa1)
API Changes
enable/disablePlatformSourcemethods have been removed fromDynamicTypeEvaluator. The caller should be responsible for updates. (I78c6d)- Allow capping the size of bound data types. (Ie2966)
- Add support for dynamic content description in
protolayout-material. (I62c8e) - Use long and
@IntRangefor duration and delay in AnimationParameters. (I388b6)
Wear Tiles: v1.2.0-alpha05
May 10, 2023
androidx.wear.tiles:tiles-*:1.2.0-alpha05 is released. Version 1.2.0-alpha05 contains these commits.
New Features
- We've added tile id to the tile events and requests. This id can be used to associate some data with a tile instance in the carousel. (Ic4f83)
API Changes
TileRenderer.inflateAsyncnow returns aListenableFuture. (I2f2b9)- Tile builders which have a replacement in the
protolayoutlibrary are now marked as deprecated. (Ie2029)
Bug Fixes
- The javadoc for
TileService.onTileResourcesRequestnow clarifies when the method might be called by the system. (Iee037)
Webkit: v1.7.0-rc01
May 10, 2023
androidx.webkit:webkit:1.7.0-rc01 is released with no changes since 1.7.0-beta01. Version 1.7.0-rc01 contains these commits.
WindowManager: v1.1.0-rc01
May 10, 2023
androidx.window:window-*:1.1.0-rc01 is released. Version 1.1.0-rc01 contains these commits.
New Features
- Release
ActivityEmbeddingas a stable API. - Various bug fixes.
window extensions core: v1.0.0-rc01
May 10, 2023
androidx.window.extensions.core:core:1.0.0-rc01 is released. Version 1.0.0-rc01 contains these commits.
New Features
- Release some interfaces to improve function for
androidx.windowand specific devices. These interfaces are not for general use. Use the interfaces inandroidx.coreinstead.
Bug Fixes
- Make core interfaces public so it can be used in extensions. (I45052)

