2022-09-07
Activity: v1.6.0-rc02
September 7, 2022
androidx.activity:activity:1.6.0-rc02, androidx.activity:activity-compose:1.6.0-rc02, and androidx.activity:activity-ktx:1.6.0-rc02 are released. Version 1.6.0-rc02 contains these commits.
Bug Fixes
OnBackPressedDispatchernow registers theOnBackInvokedCallbackwith thePRIORITY_DEFAULTinstead ofPRIORITY_OVERLAY. (I3901f)- Classes that extend
ComponentActivitywill now always have both of theironMultiWindowModeChanged()callbacks dispatched. (Ic4d85) - The
ActivityResultRegistrywill no longer return a result to theActivityResultCallbackwhen thelaunchcall throws anyExceptionand the callback was registered without aLifecycleOwner. (Ia7ff7, b/238350794) ComponentActivitywill now properly dispatch menu calls without the need to call the super function in your activity. (Ie33c5, b/238057118)
Dependency Update
- The
Activitylibrary now depends on Lifecycle2.5.1. (If6697)
Annotation-Experimental: v1.3.0
September 7, 2022
androidx.annotation:annotation-experimental:1.3.0 is released. Version 1.3.0 contains these commits.
Important changes since 1.2.0
- Add support for package-level use of
@androidx.annotation.OptIn(I24d58) - Moved Kotlin stdlib dependency to API-type, rather than compile-only. This means all clients of the Annotation-Experimental library will include the Kotlin standard library in their transitive dependencies.
Annotation: v1.5.0-rc01
September 7, 2022
androidx.annotation:annotation:1.5.0-rc01 is released. Version 1.5.0-rc01 contains these commits.
- No changes from previous 1.5.0 beta release.
Appcompat: v1.5.1
September 7, 2022
androidx.appcompat:appcompat:1.5.1 and androidx.appcompat:appcompat-resources:1.5.1 are released. Version 1.5.1 contains these commits.
Dependency Updates
AppCompatnow explicitly depends on Lifecycle2.5.1and SavedState1.2.0. (I7e3e2)
Appcompat: v1.6.0-rc01
September 7, 2022
androidx.appcompat:appcompat:1.6.0-rc01 and androidx.appcompat:appcompat-resources:1.6.0-rc01 are released. Version 1.6.0-rc01 contains these commits.
Bug Fixes
AppCompatActivitynow sets theViewTreeOnBackPressedDispatcherOwnerso that it is possible to retrieve the dispatcher from the view. (I1a115, b/235416503)- Reverted a bug fix that overwrote the configuration passed to
onConfigurationChanged, which had caused issues for tests that injected their own custom configurations throughonConfigurationChanged.
Benchmark: v1.2.0-alpha03
September 7, 2022
androidx.benchmark:benchmark-*:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.
New Features
- Added experimental APIs for using
BenchmarkStateindependently, separate fromBenchmarkRule/JUnit4. (Id478f, b/228489614)
Bug Fixes
- Added Leanback fallback for
startActivityAndWait. (01ed77, b/242899915)
Car App: v1.3.0-beta01
September 7, 2022
androidx.car.app:app:1.3.0-beta01, androidx.car.app:app-projected:1.3.0-beta01, androidx.car.app:app-automotive:1.3.0-beta01, and androidx.car.app:app-testing:1.3.0-beta01 are released. Version 1.3.0-beta01 contains these commits.
- Car apps built using this library can now go to the Play Store using API Level 5 (see our development guide). Features annotated with API level 5 and under are compatible with both Android Auto 8.1+ and the Google Automotive App Host 1.4+.
New Features
In addition to capabilities added in Car App Library 1.3.0-alpha01, the following features have been added as part of beta01 (All features here only involve with host side changes without any API changes):
- The floating navigation bar will continue to show even when a user is in a map-based selection screen in
PlaceListNavigationTemplate,RoutePreviewNavigationTemplate, andMapTemplate. This can be done by updating navigation info throughNavigationManager.updateTrip(). - Enable the action button with
FLAG_DEFAULTto have a timeout animation. This button will be clicked by default after the timeout. ([API 5 - All Templates]) - A
Rows subtext is not truncated when the car is parked, but truncated to 2 lines while driving. ([API 5 - All Templates]) - Support disabled state for
Action,Toggle,Row([API 5 - All Templates])
API Changes
- Relax constraints in
MapTemplatelist to support selectable lists (I961ed) - Remove the constraint for Header Actions to allow for custom icons. (Iad28f)
- Add a constraint
setOnClickListenerAllowed()toActionsConstraints. Where it allowedActionto setOnClickDelegate()to actions except the standard icon types. (TYPE_APP_ICON,TYPE_BACK, andTYPE_PAN) (I3c745)
Bug Fixes
- Added compatibility of Android Automotive Template Host 1.4+ with curved displays (
[Host change])
Compose Animation: v1.3.0-beta02
September 7, 2022
androidx.compose.animation:animation:1.3.0-beta02, androidx.compose.animation:animation-core:1.3.0-beta02, and androidx.compose.animation:animation-graphics:1.3.0-beta02 are released. Version 1.3.0-beta02 contains these commits.
- Removed Kotlin.experimental from the compiler options since it is depricated
Compose Compiler: v1.3.1
September 7, 2022
androidx.compose.compiler:compiler:1.3.1 is released. Version 1.3.1 contains these commits.
Bug Fixes
- Fix
IllegalStateExceptionwhere Compose Compiler was erroneously marking unit types as composable in some circumstances. (b/237863365) - Users must now specify their preferred Kotlin version when suppressing compiler version check (I9e5e2)
Compose Foundation: v1.3.0-beta02
September 7, 2022
androidx.compose.foundation:foundation:1.3.0-beta02 and androidx.compose.foundation:foundation-layout:1.3.0-beta02 are released. Version 1.3.0-beta02 contains these commits.
API Changes
- Initial version of experimental
StaggeredGrid(Ia48be) - Renamed
FocusDirection.InandFocusDirection.OuttoFocusDirection.EnterandFocusDirection.Exit(Ia4262, b/183746982) - Introduced a
rememberSnapFlingBehavioroverload that provides a quick way of enabling snapping inLazyLists. (Ifb48a) - Replaced the
snapFlingBehaviorfactory with a concreteSnapFlingBehaviorclass. ScopedSnapLayoutInfoProvidermethods to Density to make Dp<->Px conversions easier for the API users. (I54a11) - Update
LazyLayoutMeasureScope.measureto return list of placeables, highlighting desired immutability of the returned value. (I48b7c) - Introduced
SnapLayoutInfoProviderwhich takes aLazyListStateto create an instance ofSnapLayoutInfoProviderthat can be used to enable a snapFlingBehaviorforLazyLists. (I2dd10)
Bug Fixes
- Refactors
AwaitPointerEventScope#awaitLongPressOrCancellationto match other await functions (I646e6)
Compose Material: v1.3.0-beta02
September 7, 2022
androidx.compose.material:material-*:1.3.0-beta02 is released. Version 1.3.0-beta02 contains these commits.
No changes since 1.3.0-beta01
Compose Material 3: v1.0.0-beta02
September 7, 2022
androidx.compose.material3:material3:1.0.0-beta02 and androidx.compose.material3:material3-window-size-class:1.0.0-beta02 are released. Version 1.0.0-beta02 contains these commits.
API Changes
- Default components insets introduced in m3 components in beta01 version no longer account for IME insets.
- Material3 Scaffold component now has a
contentWindowInsetsparameter, allowing to specify the amount of insets to handle for the content slot. (Icf11a, b/243713323) - Deprecates the experimental Material 3
SmallTopAppBarfunction and introduces an equivalentTopAppBarfunction. Please migrate your usage to the new one. (I74404, b/226918634) - Adds control over the top app bar fling and snap behaviors. (I15c81)
- Removes startIndent from Divider, moves color to last parameter. (If7be2)
Bug Fixes
- Have Dialogs identify themselves to talkback users by announcing the word Dialog when they are displayed. (I857ef)
Compose Runtime: v1.3.0-beta02
September 7, 2022
androidx.compose.runtime:runtime-*:1.3.0-beta02 is released. Version 1.3.0-beta02 contains these commits.
Bug Fixes
- Updated API (I64ca0)
Compose Runtime: v1.0.0-alpha01
August 26, 2020
androidx.compose.runtime:runtime-*:1.0.0-alpha01 is released. Version 1.0.0-alpha01 contains these commits.
Compose UI: v1.3.0-beta02
September 7, 2022
androidx.compose.ui:ui-*:1.3.0-beta02 is released. Version 1.3.0-beta02 contains these commits.
API Changes
- Added an experimental overload for Layout which accepts a list of multiple composable content lambdas, which allows to threat measurables put into different content lambdas differently (Ic1b4e)
Changes to experimental Focus APIs:
FocusDirection.InandFocusDirection.Outare deprecated and replaced byFocusDirection.EnterandFocusDirection.Exit. (Ia4262, b/183746982)- Added two new focus properties enter and exit to specify a custom behavior for
FocusManager.moveFocus(Enter)andFocusManager.moveFocus(Exit). (I5f3f9, b/183746982) - You can now use
FocusRequester.Cancelto cancel a focus move.FocusRequester.Cancelcan be used in any of the following focus properties: up, down, left, right, next, previous, start, end, enter and exit. (Ib300f)
Core and Core-ktx: v1.9.0
September 7, 2022
androidx.core:core:1.9.0 and androidx.core:core-ktx:1.9.0 are released. Version 1.9.0 contains these commits.
Important changes since 1.8.0
- Updated to improve compatibility with Android 13, including nullability changes and parity with framework APIs
- Added
IntentSanitizerto sanitize unsafe intents before launching them. (Ib0be5) - Adds support for
BigPictureStyleusingIcon(Ice26d) - Added
@RequiresPermissionto APIs that require granting thePOST_NOTIFICATIONSpermission on SDK 33 and above. (Ie542e) - Improved parity between Android 13 accessibility framework APIs and compat APIs (I93c97, I5a074, Iedf82)
Core Google Shortcuts: v1.1.0-alpha03
September 7, 2022
androidx.core:core-google-shortcuts:1.1.0-alpha03 is released. Version 1.1.0-alpha03 contains these commits.
New Features
- Removed unused dependency. No new features.
Lifecycle: v2.6.0-alpha02
September 7, 2022
androidx.lifecycle:lifecycle-*:2.6.0-alpha02 is released. Version 2.6.0-alpha02 contains these commits.
API Changes
MediatorLiveDatanow includes a constructor to set an initial value. (Ib6cc5, b/151244085)
Bug Fixes
Lifecycleartifacts now include constraints that ensure that all inter-dependent Lifecycle artifacts use the same version, automatically upgrading other dependencies when one is upgraded. b/242871265FlowLiveData.asFlow()now creates acallbackFlowrather than using its ownChannelimplementation to ensure thread-safety and context preservation. (I4a8b2, b/200596935)FlowLiveData'sasLiveDatafunction will now preserve the initial value of aStateFlowwhen creating the newLiveDataobject. (I3f530, b/157380488)- From Lifecycle
2.5.1: Custom implementations ofAndroidViewModelFactorynow correctly calls thecreate(modelClass)function when using the stateful constructor withLifecycle2.4+ (I5b315, b/238011621)
Navigation: v2.6.0-alpha01
September 7, 2022
androidx.navigation:navigation-*:2.6.0-alpha01 is released. Version 2.6.0-alpha01 contains these commits.
New Features
- The
setupWithNavControllerintegrations inNavigationUIfor working with the top app bar will now parseR.stringvalues forReferenceTypearguments found in yourandroid:labelinto their String values instead of outputting the auto-generated resource integer. (I5f803, b/167959935) NavDeepLinknow supports default values for arrays, which allows support for repeated query params that will map to the argument's array type.NavTypealso now includes a default method which can be overridden to combine two parsed values. (Id68c3, b/209977108)- When using the exact string
${applicationId}as the placeholder in theapp:dataandapp:dataPatternattributes in the activity element of a navigation XML file, the placeholder will be automatically filled in with thepackageNameof the context upon inflation. (Iaabde, b/234223561) - Attempting to create an empty
NavDeepLinkusing thenavDeepLinkKotlin DSL will now result in a lint warning indicating that a deep link needs an uri, action, and/or mimetype to be valid. (I08d2f, b/154038883)
API Changes
- Added new
NavDestinationextension function to parse dynamic labels with arguments in the form ofandroid:label="{arg}"into String. SupportsReferenceTypearguments by parsingR.stringvalues into their String values. (I07d89, b/236269380)
Behavior Changes
- NavBackStackEntry's
argumentsand theargumentspassed to anOnDestinationChangedListenerare now only a copy of the immutable arguments that were created when you navigated to the destination. This means any changes made to those Bundles will not be reflected in subsequent accesses to theargumentsor otherOnDestinationChangedListenerinstances. (I676f5)
Bug Fixes
- From Navigation
2.5.2: Dynamic Navigation now properly attempts to install Activity destinations from other modules before navigating to them. (Ia2c16, b/240292838) - From Navigation
2.5.2: Navigation will now properly replace the Fragment instance when navigating to the same destination and setting thelaunchSingleTopflag to true. (I5a2f1, b/237374580) - From Navigation
2.5.2: FixedIllegalStateExceptioncaused by navigating to a double nested graph that shares a parent with a new popped start destination. (I9f7cb, b/243778589)
Navigation: v2.5.2
September 7, 2022
androidx.navigation:navigation-*:2.5.2 is released. Version 2.5.2 contains these commits.
Bug Fixes
- Dynamic Navigation now properly attempts to install Activity destinations from other modules before navigating to them. (Ia2c16, b/240292838)
- Navigation will now properly replace the Fragment instance when navigating to the same destination and setting the
launchSingleTopflag to true. (I5a2f1, b/237374580) - Fixed
IllegalStateExceptioncaused by navigating to a double nested graph that shares a parent with a new popped start destination. (I9f7cb, b/243778589)
Dependency Update
- Navigation
2.5.2now depends on Fragment1.5.2. (aosp/2178734)
Test Uiautomator: v2.3.0-alpha01
September 7, 2022
androidx.test.uiautomator:uiautomator:2.3.0-alpha01 is released. Version 2.3.0-alpha01 contains these commits.
API Changes
- Annotated the nullness of all public methods.
- Switched
MotionEventinjection to asynchronous with a short delay for smootherUiObject2gestures. - Reduced the polling interval while waiting from 1000ms to 100ms.
- Updated
UiDevice#wakeUpandUiDevice#sleepto useKEYCODE_WAKEUPandKEYCODE_SLEEPto support devices that override the power button. - Added
UiObject2#getDisplayIdand support for finding and managing objects across multiple displays. - Added
UiObject#clickandUiObject2#clickAndWaitmethods for clicking on a point using its coordinates.
Bug Fixes
- Fixed an issue where the display size calculations were occasionally incorrect and might ignore portions of the screen, especially in multi-window mode (Ifc016c).
- Fixed the scaling of screenshots in
UiDevice#takeScreenshot(Id80ad6). - Improved the reliability of
Until.scrollFinishedandUiObject2#scroll(I7b0595). - Fixed strict mode
IncorrectContextUseViolationwarnings (Iffa6a0).
Tracing Perfetto: v1.0.0-alpha03
September 7, 2022
androidx.tracing:tracing-perfetto:1.0.0-alpha03, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha03, and androidx.tracing:tracing-perfetto-common:1.0.0-alpha03 are released.
New Features
- No new features from the 1.0.0-alpha02.
Wear Compose: v1.1.0-alpha05
September 7, 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha05, androidx.wear.compose:compose-material:1.1.0-alpha05, and androidx.wear.compose:compose-navigation:1.1.0-alpha05 are released. Version 1.1.0-alpha05 contains these commits.
Bug Fixes
- Button roles were added to
InlineSliderandStepperso that Talkback can recognise them as buttons. (Icb46c, b/244260275) - We have corrected the z-order of position and page indicators in the Scaffold. The indicators will now sit on top of the vignette and so will not be obscured by the vignette if it is present. (Ib988f, b/244207528)
Wear Compose: v1.0.2
September 7, 2022
androidx.wear.compose:compose-foundation:1.0.2, androidx.wear.compose:compose-material:1.0.2, and androidx.wear.compose:compose-navigation:1.0.2 are released. Version 1.0.2 contains these commits.
Bug Fixes
- We have corrected the z-order of position and page indicators in the Scaffold. The indicators will now sit on top of the vignette and so will not be obscured by the vignette if it is present. (Ib988f, b/244207528)
WorkManager: v2.8.0-alpha04
September 7, 2022
androidx.work:work-*:2.8.0-alpha04 is released. Version 2.8.0-alpha04 contains these commits.
API Changes
WorkerInfo.getGeneration()andWorkerParameters.getGeneration()were added that return the generation of a worker. A worker has multiple generations, if it was updated viaWorkManager.updateWorkorWorkManager.enqueueUniquePeriodicWorkusingExistingPeriodicWorkPolicy.UPDATE. Note that If the worker is currently running, it is possible for this method to return a newer generation from that of the currently running worker if an update has happened during an execution of the worker. (I665c5, b/219446409) (I128a9, b/219446409)- Added
InitializationExceptionHandler, an Exception Handler that can be used to determine if there were issues when trying to initializeWorkManager. (I061de)