Skip to content

2022-08-24

Choose a tag to compare

@github-actions github-actions released this 24 Aug 18:55
· 190 commits to main since this release

Activity: v1.6.0-rc01

August 24, 2022

androidx.activity:activity:1.6.0-rc01, androidx.activity:activity-compose:1.6.0-rc01, and androidx.activity:activity-ktx:1.6.0-rc01 are released. Version 1.6.0-rc01 contains these commits.

Bug Fixes

  • Initializing an OnBackPressedDispatcher will no longer cause ClassVerificationErrors when using SDK versions prior to 33. (Ic32e1)
  • Classes that override ComponentActivity’s onPictureInPictureModeChanged() callback will now always have their callbacks dispatched. (Ib7fdb)

Annotation-Experimental: v1.3.0-rc01

August 24, 2022

androidx.annotation:annotation-experimental:1.3.0-rc01 is released. Version 1.3.0-rc01 contains these commits.

  • No changes from the previous release. Implementation has been frozen for RC.

Annotation: v1.5.0-beta01

August 24, 2022

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

  • No changes from previous release. API surface has been frozen for beta.

AppSearch: v1.1.0-alpha02

August 24, 2022

androidx.appsearch:appsearch-*:1.1.0-alpha02 is released. Version 1.1.0-alpha02 contains these commits.

New Features

  • Sped up Optimize process using index compaction rather than rebuilding index from scratch
  • Changed native logging tag from "icing" to "AppSearchIcing", log INFO messages by default

API Changes

  • Adds new PropertyPath object for working with paths, and new addProjection methods to accept PropertyPath. (I45588)
  • Added builtin:Thing to AppSearch builtin types (I55427)
  • Prevent empty property names in GenericDocument sooner – previously they were prevented at indexing time, now they are prevented at GenericDocument.Builder.build() time (I9e780)

Bug Fixes

  • Removed unnecessary string formatting to improve RELEVANCE scoring performance
  • More efficient pagination when encountering unreadable or deleted documents
  • Implemented garbage collection for abandoned queries
  • Fix nested indexing support for Documents. Previously indexNestedProperties was ignored. (Iae9a6)

External Contribution

  • Shea Smith: Fix nested indexing support for Documents. (Iae9a6)

Benchmark: v1.2.0-alpha02

August 24, 2022

androidx.benchmark:benchmark-*:1.2.0-alpha02 is released. Version 1.2.0-alpha02 contains these commits.

API Changes

  • Default to am force stop for MacrobenchmarkScope.killProcess(), even when rooted, except during Baseline Profile generation. This can be overridden with an optional boolean argument. (02cce9, b/241214097)

Bug Fixes

CameraX: v1.2.0-beta01

August 24, 2022

androidx.camera:camera-*:1.2.0-beta01 is released. Version 1.2.0-beta01 contains these commits.

New Features

  • New library camera-mlkit-vision. Easily integrate CameraX with many MLKit features, including barcode scanning, face detection, text detection, etc. Please find the sample code here.
  • New experimental Zero-Shutter Lag API. Optimizes capture pipeline to have better latency while keeping good image quality. When the capture mode is set to CAPTURE_MODE_ZERO_SHUTTER_LAG, the latency between the shutter button is clicked and the picture is taken is expected to be minimized, compared with other capture modes. On devices that don’t support ZERO_SHUTTER_LAG, it’ll fallback to CAPTURE_MODE_MINIMIZE_LATENCY.
  • Made ImageAnalysis.Analyzer and MLKitAnalyzer as official APIs.
  • Exposed API for setting location metadata to the saved video.
  • Rename ImageAnalysis.Analyzer#getTargetResolutionOverride() to ImageAnalysis.Analyzer#getDefaultTargetResolution().

Bug Fixes

  • Fixed Alps k61v1_basic_ref image capture issue. The captured JPEG images from HAL have incorrect Exif metadata. The Exif metadata doesn't have the 0xffd9 or 0xffda tag to make ExifInterface correctly parse the attributes. Capturing the images in YUV format and then compressing them to JPEG output images to workaround this issue. (I45abb)

Compose Animation: v1.3.0-beta01

August 24, 2022

androidx.compose.animation:animation:1.3.0-beta01, androidx.compose.animation:animation-core:1.3.0-beta01, and androidx.compose.animation:animation-graphics:1.3.0-beta01 are released. Version 1.3.0-beta01 contains these commits.

Compose Foundation: v1.3.0-beta01

August 24, 2022

androidx.compose.foundation:foundation:1.3.0-beta01 and androidx.compose.foundation:foundation-layout:1.3.0-beta01 are released. Version 1.3.0-beta01 contains these commits.

API Changes

  • Removed pointerPosition from OverscrollEffect - effects that care about pointer position can use Modifier.pointerInput { } in the effectModifier to get the current pointer position instead. (I9f606, b/241239306)
  • Exposed AwaitPointerEventScope#awaitLongPressOrCancellation as additional building block for more complex gesture detection (I04374, b/181577176)
  • Introduced lazyListSnapLayoutInfoProvider to enable snapping in Lazy Lists. (I3ecdf)
  • Introduced SnapFlingBehavior, a fling behavior that enables list snapping. Provide an instance of SnapLayoutInfoProvider with information about your snapping layout. (Ie754c)

Compose Material: v1.3.0-beta01

August 24, 2022

androidx.compose.material:material-*:1.3.0-beta01 is released. Version 1.3.0-beta01 contains these commits.

Behavior breaking change

Maximum supported elevation in dialogs and popups has been reduced to 8dp.

The maximum supported elevation for Compose dialogs and popups has been reduced from 30dp to 8dp. This change affects both material and ui custom dialogs and popups. This change is made to mitigate an accessibility bug on Android versions below S, and to ensure that accessibility services within those windows are able to interact with the content inside the dialog or popup.

You will only be impacted by this change if you are creating a custom dialog or popup implementation with an elevation set to levels higher than 8dp. Consider lowering the elevation of your dialog or popup. If you need to opt-out from this new behavior, consider forking your own dialog or popup with the desired elevation set. This is not recommended, as accessibility might be negatively impacted and it is on the developer to ensure the bottom part of the dialog or popup is interactable and readable by accessibility services.

Compose Material 3: v1.0.0-beta01

August 24, 2022

androidx.compose.material3:material3:1.0.0-beta01 and androidx.compose.material3:material3-window-size-class:1.0.0-beta01 are released. Version 1.0.0-beta01 contains these commits.

API Reference

To see latest theming, component and other composables available check out the Compose Material 3 API reference overview.

API Changes

  • Updated the Material 3 top app bar to snap into a fully collapsed to a fully extended state. Also, updated the TopAppBarDefaults behavior function to be Composables and provide default values for their top app bar state and animation spec. (I642b3)
  • Updated FAB component signatures to match surface API (I3afaa)
  • Added insets Build-in support for Top app bars, drawers, navigation bar and rail. These components, when used separately or with Scaffold will automatically handle insets for developers. Note: This change doesn't add automatic handling of status bar icons and transparency of the status and navigation bars. Please, continue to do it manually to ensure the best edge-to-edge experience. (I7e4e6, b/183161866)
  • Updated component defaults to reduce API surface for future flexibility and performance improvements. (I31820)
  • Reordered chip and navigation drawer sheet parameters to maintain consistency within the API (I45d0b)
  • Removed startIndent from Divider and moved color to be the last parameter.(If7be2)

Compose Runtime: v1.3.0-beta01

August 24, 2022

androidx.compose.runtime:runtime-*:1.3.0-beta01 is released. Version 1.3.0-beta01 contains these commits.

API Changes

  • A find method was added to CompositionData to allow developer tools using this API to quickly find a sub-group of composition using its identity. (I5794f)

Compose UI: v1.3.0-beta01

August 24, 2022

androidx.compose.ui:ui-*:1.3.0-beta01 is released. Version 1.3.0-beta01 contains these commits.

Modifier Node Refactor

The layer which handles Modifier/Modifier.Element instances and coordinates their behavior on LayoutNodes has been majorly refactored. As it stands this was a refactor which did not affect the public API of any of the many modifiers in Compose, and can be viewed as an implementation-only change. Despite that, this is an important change for various reasons. (Ie4313)

Change Summary

The added experimental Modifier.Node APIs provide an abstraction that allows for state to be maintained on an instance that will be retained with the lifecycle of the layout node, and will be allocated per-layout-node and per-usage of the corresponding Modifier.Element that produced it.

Broadly speaking, this abstraction provides an alternative mechanism to produce stateful modifiers without relying on the mechanics of the Modifier.composed API.

Risk

This change is strictly binary compatible with prior releases, and is intended to be backwards compatible in terms of observable behavior as much as practical and reasonable. That said, there are few subsystems of compose this refactor did not touch, and it is likely that behavior has changed in ways that were not covered by our tests and have not yet been found and fixed.

Please upgrade to this release with caution. If you believe this has broken something for you, please let us know.

Experimental APIs

Various experimental APIs have been added, all relating to the new concept of a "Modifier Node". Modifier.Node’s are created as a result of

  • fun modifierElementOf(…): Modifier
  • abstract class ModifierNodeElement
  • abstract class Modifier.Node
  • abstract class DelegatingNode
  • interface LayoutModifierNode
  • interface DrawModifierNode
  • interface SemanticsNode
  • interface PointerInputNode
  • interface ModifierLocalNode
  • interface ParentDataModifierNode
  • interface LayoutAwareModifierNode
  • interface GlobalPositionAwareModifierNode
  • interface IntermediateLayoutModifierNode

Behavior breaking change

Maximum supported elevation in dialogs and popups has been reduced to 8dp.

The maximum supported elevation for Compose dialogs and popups has been reduced from 30dp to 8dp. This change affects both material and ui custom dialogs and popups. This change is made to mitigate an accessibility bug on Android versions below S, and to ensure that accessibility services within those windows are able to interact with the content inside the dialog or popup.

You will only be impacted by this change if you are creating a custom dialog or popup implementation with an elevation set to levels higher than 8dp. Consider lowering the elevation of your dialog or popup. If you need to opt-out from this new behavior, consider forking your own dialog or popup with the desired elevation set. This is not recommended, as accessibility might be negatively impacted and it is on the developer to ensure the bottom part of the dialog or popup is interactable and readable by accessibility services.

API Changes

  • Fixed an issue where painterResource wouldn't update on configuration changes (I58e73, b/228862715)
  • rememberTextMeasurer no longer takes FontFamily.Resolver, Density, or LayoutDirection parameters. Please use the TextMeasurer constructor to provide custom values for these parameters. (Ia1da3)
  • Added DialogProperties.decorFitsSystemWindows property to allow Dialogs to support WindowInsets. (I57742, b/229378542)
  • Moved font constructors back to original kotlin file to retain binary compatibility. No change from last stable release. (Ieb2f3)
  • Removed unnecessary operator from several equals definitions - this has no effect. (I6c309)
  • FontVariation.Setting is a sealed interface, to allow future clamping APIs. (I11021, b/143703328)
  • Add CompositionGroup.findParameters to SlotTree.kt. This allows tools to retrieve parameters for a CompositionGroup without having to parse the entire slot table. (I124fe)

Core and Core-ktx: v1.9.0-rc01

August 24, 2022

androidx.core:core:1.9.0-rc01 and androidx.core:core-ktx:1.9.0-rc01 are released. Version 1.9.0-rc01 contains these commits.

Bug Fixes

  • IntentSanitizer.sanitizeByFiltering no longer writes to the log when filtering (69b3b55)

Core Google Shortcuts: v1.1.0-alpha02

August 24, 2022

androidx.core:core-google-shortcuts:1.1.0-alpha02 is released. Version 1.1.0-alpha02 contains these commits.

New Features

  • Update dependency from com.google.firebase:firebase-appindexing to com.google.android.gms:play-services-appindex. Developers who use this new version should not externally depend on com.google.firebase:firebase-appindexing, as the two libraries are now incompatible.

Fragment: v1.6.0-alpha02

August 24, 2022

androidx.fragment:fragment:1.6.0-alpha02, androidx.fragment:fragment-ktx:1.6.0-alpha02, and androidx.fragment:fragment-testing:1.6.0-alpha02 are released. Version 1.6.0-alpha02 contains these commits.

Bug Fixes

  • From Fragment 1.5.2: Fixed an issue where executing a popBackStack() and a replace() transaction at the same time could cause exiting fragments to run the wrong Animation/Animator. (Ib1c07, b/214835303)

Health Connect: v1.0.0-alpha04

August 24, 2022

As of 1.0.0-alpha04, Health Connect has moved from the previous group of androidx.health into androidx.health.connect. For previous versions of Health Connect, please visit the androidx.health page.

androidx.health.connect:connect-client:1.0.0-alpha04 is released. Version 1.0.0-alpha04 contains these commits.

New Features

  • Included optional debug logs builtin for API calls (link)

API Changes

  • Renamed Metadata clientId to clientRecordId, clientVersion to clientRecordVersion. (link)
  • Made Metadata uid more friendly to readers, no longer nullable. (link)
  • Added pounds to Mass unit (link)
  • Renamed DeletionChange.deleteUid to uid (link)
  • Rename Permission -> HealthPermission. This avoids ambiguity with Android Framework permissions. (link)

Bug Fixes

  • Fixed regression issues with incorrect calories unit with Energy (link)
  • Fixed regression issue with aggregation for few record types (link)

Room: v2.5.0-alpha03

August 24, 2022

androidx.room:room-*:2.5.0-alpha03 is released. Version 2.5.0-alpha03 contains these commits.

New Features

  • Added a new shortcut annotation, @Upsert, which attempts to insert an entity when there is no uniqueness conflict or update the entity if there is a conflict. (I7aaab, b/241964353)

Bug Fixes

  • Room will now throw a SQLiteConstraintException instead of a IllegalStateException during an auto-migration foreign key constraint check. (I328dd)
  • Fix a Kotlin source incompatible change for getter / properties of getOpenHelper, getQueryExecutor and getTransactionExecutor. (Iad0ac)

Sqlite: v2.3.0-alpha05

August 24, 2022

androidx.sqlite:sqlite:2.3.0-alpha05, androidx.sqlite:sqlite-framework:2.3.0-alpha05, and androidx.sqlite:sqlite-ktx:2.3.0-alpha05 are released. Version 2.3.0-alpha05 contains these commits.

API Changes

  • The library group androidx.sqlite sources has been converted from Java to Kotlin. Be aware that because androidx.sqlite had some missing nullability annotations you might experience source incompatibility errors if your sources are in Kotlin and the code was inferring the wrong nullability. Please file a bug if there are any significant incompatibility. (b/240707042)

Tracing Perfetto: v1.0.0-alpha02

August 24, 2022

androidx.tracing:tracing-perfetto:1.0.0-alpha02, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha02, and androidx.tracing:tracing-perfetto-common:1.0.0-alpha02 are released. Version 1.0.0-alpha02 contains these commits.

Bug Fixes

  • Several improvements to Perfetto service initialization
  • Improved handling of a no-response case by introducing a dedicated exit code: RESULT_CODE_CANCELLED.
  • Improved handling of parsing errors.
  • Made EnableTracingResponse.requiredVersion nullable, as we cannot know the version if we cannot communicate with the package. (I5ba20)

Wear: v1.3.0-alpha03

August 24, 2022

androidx.wear:wear:1.3.0-alpha03 is released. Version 1.3.0-alpha03 contains these commits.

New Features

  • ArcLayout now supports expansion weights which operate in a similar way to regular Layout weights. This means you can specify the relative size of child elements without having to compute their angles directly. We’ve also added a best effort MaxAngleDegrees which is respected when expanding child elements with weights. E.g. you could clamp the arc with several children with weights to 90 degrees, this would also respect the space taken by any non-expanded elements..

API Changes

  • We've added weight to ArcLayout.LayoutParams which allows a widget to expand to fill the available space, if there's more than one widget then their share of the available space is proportional to their weight. In addition we've added ArcLayout.setMaxAngleDegrees so you can for example cap the expansion at 90 degrees (NB this does not affect layout of any fixed sized child widgets). Finally ArcLayout.Widget now has setSweepAngleDegrees which allows the ArcLayout to inform a Widget with a non-zero weight of its size. (I75f24)
  • Updated nullability of setColorFilter(I99ddf, b/236498063)

Wear Compose: v1.1.0-alpha04

August 24, 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha04, androidx.wear.compose:compose-material:1.1.0-alpha04, and androidx.wear.compose:compose-navigation:1.1.0-alpha04 are released. Version 1.1.0-alpha04 contains these commits.

API Changes

  • We have updated a number of the default colors in the MaterialTheme in order to improve accessibility as the original colors did not have sufficient contrast resulting in difficulties for users to differentiate chip/card/button backgrounds from the theme background color. The updated colors are surface(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F8) and onError(0xFF202124->0xFF000000). The changes in colors though relatively subtle may impact existing screenshot tests. (81ab09)

Bug Fixes

  • Fix a logic bug in ScalingLazyColumn that could result in lists with a small (typically exactly 2) number of list items not completing initialization and as a result being transparent. (504347)

Wear Compose: v1.0.1

August 24, 2022

androidx.wear.compose:compose-foundation:1.0.1, androidx.wear.compose:compose-material:1.0.1, and androidx.wear.compose:compose-navigation:1.0.1 are released. Version 1.0.1 contains these commits.

Bug Fixes

  • Fix a logic bug in ScalingLazyColumn that could result in lists with a small (typically exactly 2) number of list items not completing initialization and as a result being transparent. (076c61)

Wear Tiles: v1.1.0

August 24, 2022

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

Important changes since 1.0.0

  • This is the first stable release that contains the Tiles Material library (read more on our blog).
  • This library contains components and layouts that are in-line with Material guidelines and easy to use. The included components are Button, Chip, CompactChip, TitleChip, CircularProgressIndicator, Text.All these components have their own colors object that can be built with the main Colors class to easily apply the same theme over all components. In addition to colors, there is a Typography class to easily get FontStyle objects using the typography name.
  • Besides components, there are recommended tile layouts - PrimaryLayout, EdgeContentLayout, MultiButtonLayout, MultiSlotLayout. All layouts have recommended padding and styles applied that are within Material guidelines.
  • For a list of the components and layouts in Tiles Material library see the release notes for Tiles.

Webkit: v1.6.0-alpha01

August 24, 2022

androidx.webkit:webkit:1.6.0-alpha01 is released. Version 1.6.0-alpha01 contains these commits.

New Features

  • Added APIs in WebSettingsCompat to enable/disable the effect of EnterpriseAuthenticationAppLinkPolicy if set by admin in WebView. This feature lets WebView open an Authentication app instead of opening the authentication URL. This feature has no effect on devices that are not managed by an enterprise policy.

Webkit: v1.5.0

August 24, 2022

androidx.webkit:webkit:1.5.0 is released. Version 1.5.0 contains these commits.

Important changes since 1.4.0

  • A new setAlgorithmicDarkeningAllowed API on WebSettingsCompat replaces the old setForceDark and setForceDarkStrategy APIs. Apps targeting SDK 33 and higher (T) should use the new API, as the old API will no longer have any effect for those apps.
  • An allow-list of URLs to use the configured proxy can now be set through ProxyCofig.Builder by setting setReverseBypassEnabled to true. When this is in effect, all other URLs will bypass the configured proxy.