Skip to content

2026-07-29

Choose a tag to compare

@github-actions github-actions released this 29 Jul 19:52
· 4 commits to main since this release

Appcompat: v1.8.0-rc01

July 29, 2026

androidx.appcompat:appcompat:1.8.0-rc01 and androidx.appcompat:appcompat-resources:1.8.0-rc01 are released. Version 1.8.0-rc01 contains these commits.

Benchmark: v1.5.0-beta01

July 29, 2026

androidx.benchmark:benchmark-*:1.5.0-beta01 is released. Version 1.5.0-beta01 contains these commits.

API Changes

  • PerfettoCapture and PerfettoTraceRule can now capture in-process traces and merge them for a target package. (I9a00b, b/497959820)

Compose Animation: v1.12.0-rc01

July 29, 2026

androidx.compose.animation:animation-*:1.12.0-rc01 is released. Version 1.12.0-rc01 contains these commits.

Compose Foundation: v1.12.0-rc01

July 29, 2026

androidx.compose.foundation:foundation-*:1.12.0-rc01 is released. Version 1.12.0-rc01 contains these commits.

Compose Material: v1.12.0-rc01

July 29, 2026

androidx.compose.material:material-*:1.12.0-rc01 is released. Version 1.12.0-rc01 contains these commits.

Compose Material3: v1.5.0-alpha25

July 29, 2026

androidx.compose.material3:material3-*:1.5.0-alpha25 is released. Version 1.5.0-alpha25 contains these commits.

API Changes

  • Renamed trailingIcon parameter to trailingContent in the shape, checked, and selected DropdownMenuItem overloads while maintaining binary compatibility. (I2ecbd)
  • Added new selection and container color properties to MenuItemColors, and renamed trailingIcon to trailingContent in the new colors constructor while maintaining binary compatibility. (I20b92)
  • Improved ScrollField accessibility and keyboard navigation support. (If7477)
  • Remove ComponentOverride APIs (I3784b)
  • Deprecated 2-parameter SliderState.Saver and RangeSliderState.Saver in favor of new overloads taking steps. SliderState no longer publicly implements DraggableState. (I7c91b)
  • Graduate BasicAlertDialog API from Experimental (If157c)
  • Changed ButtonGroupScope in ButtonGroup to a sealed interface. Split Modifier.animateWidth into two overloads to allow omitting compressionLimit and dynamically resolving the layout direction, and changed the compressionLimit parameter type from PaddingValues to Dp. (I8ef39)
  • Renamed TonalToggleButton to FilledTonalToggleButton. Added smooth border stroke animations to OutlinedToggleButton. Deprecated ToggleButtonDefaults.shapes in favor of shapesFor. (Icb433)
  • Promote LinearTrackStopIndicatorSize, LinearIndicatorTrackGapSize, and CircularIndicatorTrackGapSize to stable. (I794d0)
  • Deprecated SplitButtonLayout Api to use SplitButton instead (Ic9840)

Bug Fixes

  • Update focus switching in case of error for TimePickerTextField input in TimePicker.kt. (Ieceec)
  • Fixed shape of segmented list item when the list only has a single item. (I2ea1c, b/479721696)
  • Update KDocs for TimePickerDialog.kt. (Ia5fb8)

remote compose: v1.0.0-alpha16

July 29, 2026

androidx.compose.remote:remote-*:1.0.0-alpha16 is released. Version 1.0.0-alpha16 contains these commits.

API Changes

  • Exposed companion object and invoke factories for RemoteImageBitmap to allow instantiating remote image bitmaps from a URL or ImageBitmap in non-composable contexts. (I4dbc7)
  • Expose LineBreak strategy and hyphenation frequency in RemoteTextStyle (I7f2e6, b/510078059)
  • Promoted RemotePaint interface to public. (Ida62b, b/465743273)
  • Removed deprecated shorthand comparison operators (eq, ne, lt, le, gt, ge) across RemoteFloat, RemoteInt, and RemoteBoolean. (Ie01a9, b/532022248, b/532022248)

Bug Fixes

  • Fixes line height calculation in RemoteText and constraints scaling in widthIn/heightIn modifiers. (I89814)
  • Fixed state leak in RemoteComposePlayer (I95630, b/531743466)

Compose Runtime: v1.12.0-rc01

July 29, 2026

androidx.compose.runtime:runtime-*:1.12.0-rc01 is released. Version 1.12.0-rc01 contains these commits.

Compose UI: v1.12.0-rc01

July 29, 2026

androidx.compose.ui:ui-*:1.12.0-rc01 is released. Version 1.12.0-rc01 contains these commits.

Concurrent: v1.4.0-alpha01

July 29, 2026

androidx.concurrent:concurrent:1.4.0-alpha01, androidx.concurrent:concurrent-futures:1.4.0-alpha01, and androidx.concurrent:concurrent-futures-ktx:1.4.0-alpha01 are released. Version 1.4.0-alpha01 contains these commits.

API Changes

External Contribution

  • Merge concurrent-ktx into the concurrent library. All Kotlin extensions are now part of the main concurrent artifact. concurrent-ktx is now an empty artifact for compatibility. (Ibaed2)

Constraintlayout: v1.1.2

July 29, 2026

androidx.constraintlayout:constraintlayout-compose:1.1.2, androidx.constraintlayout:constraintlayout-compose-android:1.1.2, and androidx.constraintlayout:constraintlayout-core:1.1.2 are released. Version 1.1.2 contains these commits.

Bug Fixes

  • Removed a protobuf dependency with a known security vulnerability from constraintlayout-compose's bundled lint check. Note: since this protobuf dependency is only present on the developer machine as part of running lint (it is not contained inside the library code / included in the APK), the actual security risk here does not affect Android applications using constraintlayout-compose, the risk is only present on the local developer machine. (Ia94a8, b/401068466)

Constraintlayout:

Credentials Credentials-play-services-auth: v1.7.0-alpha03

July 29, 2026

androidx.credentials:credentials:1.7.0-alpha03 and androidx.credentials:credentials-play-services-auth:1.7.0-alpha03 are released. Version 1.7.0-alpha03 contains these commits.

API Changes

  • Added credentials: List<Credential> property to GetCredentialResponse to support returning multiple credentials. (Ifdf66)

Bug Fixes

  • Added automatic context-swapping for MutableContextWrapper in CredentialManager to prevent Activity memory leaks across configuration changes during coroutine suspensions. (Ie959b, Ide0e2)

credentials registry: v1.0.0-alpha05

July 29, 2026

androidx.credentials.registry:registry-*:1.0.0-alpha05 is released. Version 1.0.0-alpha05 contains these commits.

API Changes

  • Added supportedProtocols optional parameter to OpenId4VpRegistry constructor for OpenID4VP protocol registrations. (Id5053)
  • Added metadataDisplayText property to VerificationEntryDisplayProperties. (I62ba54)

Bug Fixes

  • Fixed an issue where explainer and warning fields were missing from the verification JSON payload generated by OpenId4VpRegistry. (I933e07)

DataStore: v1.3.0-alpha10

July 29, 2026

androidx.datastore:datastore-*:1.3.0-alpha10 is released. Version 1.3.0-alpha10 contains these commits.

API Changes

  • GeneralSecurityException in AeadSerializer is now wrapped in CorruptionException for better CorruptionHandler integration. (I26e56, b/514941919)

Fragment: v1.9.0-rc01

July 29, 2026

androidx.fragment:fragment-*:1.9.0-rc01 is released. Version 1.9.0-rc01 contains these commits.

Bug Fixes

  • When using FragmentScenario.launchInContainer the fragment under test will now be inside of a FragmentContainerView. (Ia6273, b/531550353)

Glance Wear: v1.0.0-alpha15

July 29, 2026

androidx.glance.wear:wear:1.0.0-alpha15, androidx.glance.wear:wear-core:1.0.0-alpha15, and androidx.glance.wear:wear-tooling-preview:1.0.0-alpha15 are released. Version 1.0.0-alpha15 contains these commits.

New features

  • Added Lint warning when setting empty background to the Wear Widget document. (Ic6475, b/529269573)

Ink: v1.1.0-alpha06

July 29, 2026

androidx.ink:ink-*:1.1.0-alpha06 is released. Version 1.1.0-alpha06 contains these commits.

API Changes

  • Added calculateMinimumRequiredVersion methods to the API for BrushFamily subtypes. (I338c9)
  • Expose AffineTransform component fields (Ic2ec3)
  • Fix memory leak in InProgressStrokesView, improved experimental partial stroke eraser visual artifacts, improved protobuf representation for custom brush texture layers (I6ff86)
  • Add initializing constructor for MutableAffineTransform (to match ImmutableAffineTransform) (I96ec7)
  • Add InProgressStroke.clear (Ie0032)
  • Add toImmutable methods to data-structures with mutable and immutable subclasses (I53835)
  • KMP migration (Icbf38, b/521850119, b/534309122)

Bug Fixes

  • Adding further support for brush versioning and texture animations. (Iea9ba)

Loader: v1.2.0

July 29, 2026

androidx.loader:loader:1.2.0 is released. Version 1.2.0 contains these commits.

Important changes since 1.1.0:

  • Started using jspecify nullability annotations.
  • Added Kotlin extension functions for LoaderManager to make the library easier to use from Kotlin.

Navigation: v2.10.0-beta01

July 29, 2026

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

API Changes

  • Introduce NavBackStackEntryInfo to expose back stack snapshots during navigation events. This enables richer custom predictive back animations. (Icb3b8)

Navigation3: v1.1.5

July 29, 2026

androidx.navigation3:navigation3-*:1.1.5 is released. Version 1.1.5 contains these commits.

Bug Fixes

  • The entryProvider DSL now prioritizes NavEntry built with a key instance, for example entry(key = userKey) { ... } over NavEntry built with a key class such as entry<UserKey>{ ... }.(Ib5ec9, b/533331924)

Navigation3: v1.2.0-alpha07

July 29, 2026

androidx.navigation3:navigation3-*:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.

API Changes

  • Added an abstract WrappedMatchResult class to wrap another DeepLinkMatcher.MatchResult. This allows customized match results layered on top of another one. (I7d4dc, b/470282247)
  • Added new BackStackMatcher class which takes two parameters: a matcher instance, and a builder lambda that provides the input matcher's match result and returns a back stack. Upon a successful match, BackStackMatcher returns a BackStackMatchResult which extends WrappedMatchResult containing the original match result along with the back stack built with the lambda. The BackStackMatcher can only be created with the new DeepLinkMatcher.withBackStack extension function. (Ibf987, b/470282247)

  • Added an abstract DeepLinkSerializer class that extends KSerializer to encode and decode value : T as a String. DeepLinkSerializer can be used to serialize non-primitive deep link arguments. Compatible with rememberSaveable and rememberNavBackStack. (Id3c9f, b/470282247)

  • DeepLinkMatcher has added a second type parameter out R : DeepLinkMatcher.MatchResult<T> so that developers can access the properties of the subclassed MatchResult returned by DeepLinkMatcher.match() without type casting. (I693d3, b/470282247)

  • DeepLinkMatcher.MatchResult's T upper bound has changed from Any? to Any. (I6bf1a)

  • DeepLinkRequest constructor field uri now defaults to null. The secondary constructor's uriString has been renamed to uri. (Ia0f14, b/522194187)

Bug Fixes

  • ResultEffect now uses rememberUpdatedState to capture the latest onResult lambda. (I7d2a3, b/531709234)
  • Fixed deep link matching for empty path segments. If the argument type is String, the empty path will be treated as an empty string value. Otherwise, the empty path is treated as no value provided and will fall back to defautl value. If there is no defautl value, matching will fail. (I56575, b/535298128)
  • Added support for empty query values in DeepLinkRequest.uri. If the argument is of String type, the empty value will be treated as a literal empty string. Otherwise, the empty value is treated as no value provided and matching will attempt to fallback to default value. If there is no default value, matching will fail. (I30343, b/535127459)
  • EntryProvider now prioritizes matching based on key instances over key types. (Ib5ec9, b/533331924)
  • SceneState now correctly calculates previous scenes starting from the top-most non-overlay scene. (I91915, b/513630541)

navigationevent: v1.2.0-alpha03

July 29, 2026

androidx.navigationevent:navigationevent-*:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.

API Changes

  • Add title and url to NavigationEventInfo to allow customizing the destination title and location URL. (Ie5619)
  • Add NavigationEventDispatcherOwner factory in navigationevent. (I740d3)
  • Add ExperimentalNavigationEventApi annotation to allow explicit opt-in for new and unstable APIs. (Ia5d25)

Bug Fixes

  • Make BrowserInput publicly available in wasmJs targets as an experimental API. (Icc2a8)

Recyclerview:

Room 3.0: v3.0.1

July 29, 2026

androidx.room3:room3-*:3.0.1 is released. Version 3.0.1 contains these commits.

Bug Fixes

  • Fix an unnecessary println() during processing. Thanks to Simon Marquis! (b/532893031)
  • Fix an issue regarding other database usages within another database's transaction mixing in leading undefined behaviour. (b/437068912)

AndroidX releases Stay organized with collections Save and categorize content based on your preferences.:

Tracing: v2.0.0-rc01

July 29, 2026

androidx.tracing:tracing-*:2.0.0-rc01 is released. Version 2.0.0-rc01 contains these commits.

Version 2.0.0-beta01

July 15, 2026

androidx.tracing:tracing-*:2.0.0-beta01 is released. Version 2.0.0-beta01 contains these commits.

API Changes

  • PerfettoCapture and PerfettoTraceRule can now capture in-process traces and merge them for a target package. (I9a00b, b/497959820)
  • androidx.benchmark now has a minSdk of 24. (Ic2a85)

Bug Fixes

  • Tracing 2.0-beta01 release. (I1b162)
  • Use platform specific thread identifiers when generating track information. (I6ba64)

Version 2.0.0-alpha09

June 23, 2026

androidx.tracing:tracing-*:2.0.0-alpha09 is released. Version 2.0.0-alpha09 contains these commits.

API Changes

  • Minor API change in Tracer to diambiguate between instant(...) and writeInstant(...). (I0935a)
  • Add support for propagation tokens in instant events. (I99f81)
  • Allow full usage of Perfetto flows in the experimental manual context propagation API. (I20cb6)
  • Defer creation of the BufferedSink and ProtoWriter in TraceSink. (Ibd098)
  • Make Tracer discovery simple and pluggable for both Java and Android Libraries. (I99111)
  • Make it easy for library developers to discover an instance of TraceDriver that can be used for in-process tracing. (Ia503e)

Version 2.0.0-alpha08

May 19, 2026

androidx.tracing:tracing-*:2.0.0-alpha08 is released. Version 2.0.0-alpha08 contains these commits.

API Changes

  • Add the ability to discover and override instances of TraceDriver to be used process wide. (I3f715)
  • Rename Tracer.recordException to Tracer.recordExceptionAndThrow. (I4411f, b/503092450)

Version 2.0.0-alpha07

May 06, 2026

androidx.tracing:tracing-*:2.0.0-alpha07 is released. Version 2.0.0-alpha07 contains these commits.

API Changes

  • Add a API to obtain a stub tracer that can be used when tracing is disabled. (I84c98)
  • Make tracing lifecycle consistent with system tracing. (Ib391b)
  • Counter APIs are now entirely allocation free. (I5e73a)

Bug Fixes

  • Fixed a keep rule for the Perfetto SDK (tracing-perfetto) which ensures that the Perfetto SDK can be enabled. (I1d227)
  • Add the ability to trace flush() events. (I38014, b/495852704)

Version 2.0.0-alpha06

April 22, 2026

androidx.tracing:tracing-*:2.0.0-alpha06 is released. Version 2.0.0-alpha06 contains these commits.

API Changes

  • Unrestrict File.createPerfettoFile() so others can safely create sinks. When a block() throws an exception in trace / traceCoroutine create an instant event for the exception with the metadata representing the corresponding stack trace elements. (I682e5, b/501536851, b/437166283)
  • Add a setCounter(...) overload that takes a Java Long type. (Ic0469, b/356082604)
  • Tracing 2.0 now uses Long for platform specific Thread identifiers. (I67277)

Bug Fixes

Version 2.0.0-alpha05

April 08, 2026

androidx.tracing:tracing-*:2.0.0-alpha05 is released. Version 2.0.0-alpha05 contains these commits.

API Changes

  • TraceSink factory functions now return TraceSink and not AbstractTraceSink. Files now have a unique suffix. We make sure that we can atomically create a new file that will be used to store trace packets. (I4c4aa, b/496298726)
  • Simplify and make coroutine context propagation faster. (Ia62db)
  • Introduce the optional attributes() when constructing a TraceDriver that provides a way to add metadata pertaining to a trace. (Ia147e)

Bug Fixes

  • Process threads and counter tracks are now synchronized. This fixes exceptions of the form: java.lang.NullPointerException: Cannot invoke "androidx.tracing.ThreadTrack.flush$tracing()" because "threadTrack" is null
  • Avoid emitting sink events when tracing is disabled.

Version 2.0.0-alpha04

March 25, 2026

androidx.tracing:tracing-*:2.0.0-alpha04 is released. Version 2.0.0-alpha04 contains these commits.

API Changes

  • Make AbstractTraceDriver really abstract, and move the Perfetto implementation into the tracing-wire module. (Ie2f59)
  • Give more descriptive names to base implementations to avoid using the wrong one. For developers previously extending androidx.tracing.Trace{Sink|Driver} they will now need to switch to using AbstractTrace{Sink|Driver}. (I9b46d)

Version 2.0.0-alpha03

March 11, 2026

androidx.tracing:tracing-*:2.0.0-alpha03 is released. Version 2.0.0-alpha03 contains these commits.

API Changes

  • Added an experimental InMemoryRingBufferTraceSink implementation which allows setting a capacity restriction and avoids writing to disk unless explicitly asking for it. (I1dc44, b/484409653, I65a37, b/484409653)
  • Fix race condition when emitting trace events for coroutine suspends and resumes. (Ie145e)

Bug Fixes

  • androidx.tracing no longer attempts to draw connections from parent to child coroutines in traces by default. This has been confusing, since the underlying trace format doesn't support 1:N and N:1 connections, resulting in a nest of arrows due to ambiguity about which coroutine slice connects to what. You can still manually opt-in to propagation with the tokenForManualPropagation() API when it's important for your use case. (Ib2cf9)

Version 2.0.0-alpha02

February 25, 2026

androidx.tracing:tracing-*:2.0.0-alpha02 is released. Version 2.0.0-alpha02 contains these commits.

New Features

  • Improved performance for the Perfetto Trace Sink implementation by using the suspendCoroutineUninterceptedOrReturn intrinsic (2ea97b).

Version 2.0.0-alpha01

January 28, 2026

androidx.tracing:tracing-*:2.0.0-alpha01 is released. Version 2.0.0-alpha01 contains these commits.

New Features

AndroidX Tracing 2.0 introduces a significant new API surface for low-overhead, in-process tracing, as a complement to the existing android.os.Tracing-based APIs in Tracing 1.0. The new APIs are available both on Android and host JVM, which enables host tools to emit low overhead traces for performance analysis, using the same standard Perfetto trace format.

Emitted traces are supported both by Android Studio and Perfetto, and can be recorded with an expanded feature set including tagging slices with metadata (such as function arguments!), and coroutine context trace propagation.

This initial alpha is only meant for in-process tracing workflows, and does not yet integrate with Android OS tracing or Studio Profiler System Tracing - these will be coming in a future alpha.

  /**
  * A [TraceSink] defines how traces are serialized.
  *
  * [androidx.tracing.wire.TraceSink] uses the `Perfetto` trace packet format.
  */
  fun createSink(): TraceSink {
      val outputDirectory = File(/* pathname = */ "/tmp/perfetto")
      // We are using the factory function defined in androidx.tracing.wire
      return TraceSink(
          sequenceId = 1,
          directory = outputDirectory
      )
  }

/**
* Creates a new instance of [androidx.tracing.TraceDriver].
*/
fun createTraceDriver(): TraceDriver {
// We are using a factory function from androidx.tracing.wire here.
// isEnabled controls whether tracing is enabled for the application.
val driver = TraceDriver(sink = createSink(), isEnabled = true)
return driver
}

fun main() {
val driver = createTraceDriver()
driver.use {
driver.tracer.trace(category = CATEGORY_MAIN, name = "basic") {
Thread.sleep(100L)
}
}
}


API Changes

  • Make Tracer a property of the TraceDriver. (Iabd9b)
  • Add support for manual context propagation. (I899ff)
  • Add the ability to add call stack information in a trace section. (If6a1b)
  • Introduce the new androidx.tracing APIs. (I5102b)
  • Allow instant events to contain metadata, and add counters to instants & counters. (Ia2ed3)
  • Reduce the surface area of the API annotated with @DelicateTracingApi. Nothing in the top level API should require the use of @DelicateTracingApi. (I565e0)
  • Simplify context propagation by unifying PropagationTokens. (Iab839)
  • Stabilize BlackHole APIs in androidx.benchmark. (I2b67e, b/451749438)
  • Add the ability to annotate the trace section as a root span. (Ic8365)
  • Allow the developer to explicit about propagation tokens. (I06bb1)
  • Renamed MetadataHandleCloseable to EventMetadataCloseable, and MetadataHandle to EventMetadata. Also added an optional CoroutinePropagationToken argument to Tracer.traceCoroutine to allow the developer to explicitly specify the propagation token to use. (I219f7, b/454147392)
  • Introduced a new Tracer entry point which gives developers a lot more control on how to trace. (I24a7b)
  • Add the ability to control how context propagation happens in a SliceTrack. (Ieb8fc)
  • fillCount in PooledTracePacketArray is now correctly marked volatile. (I75d2c)
  • Mark MetadataEntry @DelicateTracingApi. (I8c723)
  • Add the ability for a TraceSink to be able to handle lost trace events (when the pool is exhausted). (I3b374)
  • Add the ability to conditionally emit trace events based on a predicate. (I621b4)
  • Add the ability to add categories to a trace event. (I449c2)
  • Mark TraceEvent, PooledTracePacketArray as DelicateTracingApi. (Iaac6d)
  • Make ProcessTrack.id, ThreadTrack.id, ThreadTrack.name, CounterTrack.name and CounterTrack.parent public. (I81210)
  • Renamed the SliceTrack.traceFlow() API to traceCoroutine(). (I79ad0)
  • Add the ability to add contextual information to slices via debug annotations in a Perfetto trace. (Ic2b56)
  • Make it possible to construct an instance of WireTraceSink with a File / OutputStream. (Iecea0)
  • Removing obsolete @RequiresApi(21) annotations (Ic4792)

Wear Compose: v1.7.0-alpha07

July 29, 2026

androidx.wear.compose:compose-*:1.7.0-alpha07 is released. Version 1.7.0-alpha07 contains these commits.

API Changes

  • Refactored OneHandedGesture APIs, replacing Boolean indicator state (that required a reset after showing the indicator) with a suspend function to run the animation. Each type of indicator now has its own indicator state class, encapsulating the animation logic for that indicator. Renamed from from key to gestureId in GestureConfiguration. (I7974f, b/522761843)
  • Add CompactButton single-slot content overload (Idaffc, b/527889640)
  • Add PinnableContainer support to TransformingLazyColumn (Id3dc9, b/492418172)

Bug Fixes

  • Added and updated module-level documentation for Wear Compose Foundation, Material 3, and Navigation 3. (I111d7, b/498153783)
  • Fixed an issue in ScreenScaffold where recompositions could cause un-remembered ScrollInfoProvider to reset scroll tracking state. (I8be02, b/524620765)
  • Address IllegalArgumentException: maxWidth must be >= than minWidth error caused by large horizontal paddings (I014e8, b/531192734)
  • Fix EdgeButton animation on fast fling. (I9657f, b/512700520)

Wear Remote Compose Material 3:

wear protolayout: v1.4.2

July 29, 2026

androidx.wear.protolayout:protolayout-*:1.4.2 is released. Version 1.4.2 contains these commits.

Vulnerability & Security Fixes

  • Prevented crashes in the expression pipeline caused by invalid cubic bezier parameters in animations by falling back to a default interpolator.

  • Improved ProtoLayout's renderer by wrapping exception handling to prevent crashes by guarding against non-finite values or invalid animations.

Wear Tiles: v1.6.2

July 29, 2026

androidx.wear.tiles:tiles-*:1.6.2 is released. Version 1.6.2 contains these commits.

No changes from 1.6.1. See ProtoLayout release notes for relevant changes.

Webkit:

WorkManager: v2.12.0-beta01

July 29, 2026

androidx.work:work-*:2.12.0-beta01 is released. Version 2.12.0-beta01 contains these commits.

Bug Fixes

  • Fix memory leak when catching executor exceptions (I3404e, b/532588487)
  • Improved cancellation propagation for RemoteListenableWorker so that system-initiated worker stops properly cancel remote coroutines and reschedule work, while self-cancelling remote workers correctly mark work as FAILED. Note: This behavior is currently gated behind the library-group restricted flag Configuration.isRemoteCancellationPropagationFixEnabled (default false) to allow experimental verification and ensure that reliability metrics remain stable before removing the flag permanently. (I387f3, b/420724435)

Jetpack Compose Glimmer: v1.0.0-alpha16

July 29, 2026

androidx.xr.glimmer:glimmer:1.0.0-alpha16 and androidx.xr.glimmer:glimmer-google-fonts:1.0.0-alpha16 are released. Version 1.0.0-alpha16 contains these commits.

API Changes

  • Add page indicator API for use with the GlimmerHorizontalPager. This component is bundled by default when using the Pager, but may also be used separately as long as it is provided a GlimmerPagerState (I54990, b/481669397)
  • Add ButtonGroup component (I26324, b/481662773)