2022-04-05
Activity: v1.5.0-alpha05
April 6, 2022
androidx.activity:activity:1.5.0-alpha05, androidx.activity:activity-compose:1.5.0-alpha05, and androidx.activity:activity-ktx:1.5.0-alpha05 are released. Version 1.5.0-alpha05 contains these commits.
Bug Fixes
ComponentActivity'sonPanelClosed()now calls the superonPanelClosed()as well, fixing an issue where theonContextMenuClosedmethod would not be called. (Ib6f77)
Appcompat: v1.5.0-alpha01
April 6, 2022
androidx.appcompat:appcompat:1.5.0-alpha01 and androidx.appcompat:appcompat-resources:1.5.0-alpha01 are released. Version 1.5.0-alpha01 contains these commits.
API Changes
- Added a new API to expose switch thumb's position to subclasses (I9bfb4)
- Updated nullability to match Tiramisu DP2 (I0cbb7)
- Backported compound drawable tinting to TextView-derived widgets (Idf98c, b/165822337)
AppCompatDialognow extendsComponentDialogfor compatibility withOnBackPressedDispatcher(Id9b91, b/217620781)SearchView.onQueryRefine()is now protected visibility to allow overrides (I6cce0, b/212882845)
Bug Fixes
- AppCompat
Toolbarnow callsMenuHostHelper'sonPrepareMenu()API. (I9b9b5, b/227376894) AppCompatEditText,AppCompatAutoCompleteEditText,AppCompatMultiAutoCompleteEditTextwill no longer reset clickable or longClickable in the constructor when set in XML (Ic5066, b/221094907)AppCompatEditText,AppCompatAutoCompleteTextView, andAppCompatMultiAutoCompleteTextViewwill not call overriddensetKeyListenerduring the constructor (I5c13a, b/208480173)- Appcompat will not wrap instances of
NumberKeyListenerpassed tosetKeyListener, allowingTextViewto correctly configure the locale onNumberKeyListeners(Ibf113, b/207119921) - Fixed issue with all
NumberKeyListenersubclasses introduced in AppCompat 1.4.0 that allowed unexpected characters such as punctuation to be input (Iede7a, b/207119921)
Benchmark: v1.1.0-beta06
April 6, 2022
androidx.benchmark:benchmark-*:1.1.0-beta06 is released. Version 1.1.0-beta06 contains these commits.
Bug Fixes
- Fix trace recording crash on API 21/22 (If7fd6, b/227509388)
- Overhaul activity launch completion detection to fix 'Unable to read any metrics' exception in startup macrobenchmarks. (Ia517c)
Camera-Camera2, Camera-Core, Camera-Lifecycle, & Camera-Video: v1.1.0-beta03
April 6, 2022
androidx.camera:camera-*:1.1.0-beta03 is released. Version 1.1.0-beta03 contains these commits.
API Changes
- Made
CaptureRequestOptionsconstructor restricted. (I261b6) - Added an experimental API for using
CameraControllerwith external image processing libraries. e.g. MLKit (I4ea71)
Bug Fixes
- Fixed the issue that preview becomes sideway in
PreviewViewwhen activity is not restarted after rotating devices in multi-window. (I1ea36, b/223488673) - Fix a multi-window issue that when focus changes back to the app it fails to resume the camera when (1) other high priority app opens a different camera (2) the device is Samsung Android 12 devices. (I7e9f2)
- Workaround included for devices that crash when checking availability of flash. These devices will not have torch available. (If26a3, b/216667482)
- Fix
AbstractMethodErrorissue happened when apps use extensions and enable proguard. (I7cbaf, b/222726805) - Force disable bokeh extension mode on Motorola razr 5G device which will cause black preview screen issue. (I35d49)
- Fixed audio/video out of sync after pause and resume on some Samsung devices pre-API 29. (I64622, b/202798609, b/202798572)
- Fixed audio/video out of sync after pause and resume on Sony G3125. (I2a1a5, b/202799148)
- Fixed a crash when the Recorder encountered an
InvalidConfigException. However, this fix only prevents app from crashing, but doesn't resolve the cause of theInvalidConfigException. If theRecorderstill cannot be configured, applications will receive error callback when it starts recording. (I89c29, b/213617227)
External Contribution
- updated :compose:ui:ui-test api (updateApi) due to test-coroutines-lib migration (I3366d)
Compose Animation: v1.2.0-alpha07
April 6, 2022
androidx.compose.animation:animation:1.2.0-alpha07, androidx.compose.animation:animation-core:1.2.0-alpha07, and androidx.compose.animation:animation-graphics:1.2.0-alpha07 are released. Version 1.2.0-alpha07 contains these commits.
API Changes
AnimatedImageVectornow supportsrepeatCountandrepeatMode(Ia3e75, b/199304067)
Compose Compiler: v1.2.0-alpha07
April 6, 2022
androidx.compose.compiler:compiler:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.
Compose Foundation: v1.2.0-alpha07
April 6, 2022
androidx.compose.foundation:foundation:1.2.0-alpha07 and androidx.compose.foundation:foundation-layout:1.2.0-alpha07 are released. Version 1.2.0-alpha07 contains these commits.
API Changes
- Added a
PinnableParentAPI that allows children of lazy layouts to prevent the currently composed items from being disposed (Ibbdd0, b/184670295) LazyListLayoutInfoandLazyGridLayoutInfonow havebeforeContentPaddingandafterContentPaddingfields (I3b628, b/200920410)- Added
KeyboardType.Decimalas an alternative toKeyboard.Numberfor specifically including decimal separator in IME. (Iec4c8, b/209835363) - Add new font descriptor Font(DeviceFontFamilyName) to optionally lookup system-installed fonts during font fallback chains. (I30468, b/219754572)
PointerEventType.ScrollandPointerEvent.scrollDeltaare stable APIs now (I574c5, b/225669674)- Added temporary compatibility configuration for
includeFontPaddinginTextStyle/ParagraphStyle. includeFontPaddingcan be changed viaTextStyle(platformStyle = PlatformTextStyle(includeFontPadding = true/false)). This is a temporary configuration option to enable migration and will be removed. (If47be, b/171394808) - Updated
FontFamily.Resolverto integrate System-wide bold text accessibility setting (I6c1e7) - The
consumeWindowInsetsextension property ofComposeViewallows developers to disable consumption of Android WindowInsets. This allows separateComposeViewsin the hierarchy to each applyWindowInsetswithout interfering with each other. (I0ef08, b/220943142)
Compose Material: v1.2.0-alpha07
April 6, 2022
androidx.compose.material:material-*:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.
Compose Material 3: v1.0.0-alpha09
April 6, 2022
androidx.compose.material3:material3:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits.
New Features
- Added Material 3 Switch API (I2c3ad)
API Changes
- Added support for dropdown menus with text fields (aka 'exposed dropdown menus' or 'combo boxes'.) (I1b832)
- Added shape parameter to MaterialTheme and Shape sub system. (I37426)
- Added an expanded parameter to
ExtendedFloatingActionButtonto control whether the FAB is expanded or collapsed, with animations between each state. Added Extended FAB overload for extended FABs with trailing text for ExtendedFABs without icon. (Iba7f1)
Compose Runtime: v1.2.0-alpha07
April 6, 2022
androidx.compose.runtime:runtime-*:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.
API Changes
- New function
Snapshot.withoutReadObservation { ... }was added. It allows users to run the passed lambda without subscribing to the changes of the state values read during this block. You could find it useful in use cases when you want to benefit from the snapshot based thread safe write/reads, but want to be able to read the value without causing unnecessary recomposition or remeasure. (I9f365, b/214054486)
Compose UI: v1.2.0-alpha07
April 6, 2022
androidx.compose.ui:ui-*:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.
API Changes
- New function
Snapshot.withoutReadObservation { ... }was added. It allows users to run the passed lambda without subscribing to the changes of the state values read during this block. You could find it useful in use cases when you want to benefit from the snapshot based thread safe write/reads, but want to be able to read the value without causing unnecessary recomposition or remeasure. (I9f365, b/214054486) - The
consumeWindowInsetsextension property ofComposeViewallows developers to disable consumption of AndroidWindowInsets. This allows separateComposeViewsin the hierarchy to each applyWindowInsetswithout interfering with each other. (I0ef08, b/220943142) - Added
KeyboardType.Decimalas an alternative toKeyboard.Numberfor specifically including decimal separator in IME. (Iec4c8, b/209835363) PointerEventType.ScrollandPointerEvent.scrollDeltaare stable APIs now (I574c5, b/225669674)- Enable Nested Scroll interop between View and Compose for cooperating View classes. This means compose is now able to dispatch scroll deltas to a (cooperating) View parent. (I5d1ac, b/174348612)
- Updated
FontFamily.Resolverto integrate System-wide bold text accessibility setting (I6c1e7) Font(AssetManager, String, ...)is deprecated, replaced withFont(String, AssetManager, ...). This is an experimental API. (I1c7a4)- Add new font descriptor
Font(DeviceFontFamilyName)to optionally lookup system-installed fonts during font fallback chains. (I30468, b/219754572) - Added temporary compatibility configuration for
includeFontPaddingin TextStyle/ParagraphStyle.includeFontPaddingcan be changed viaTextStyle(platformStyle = PlatformTextStyle(includeFontPadding = true/false)). This is a temporary configuration option to enable migration and will be removed. (If47be, b/171394808) - Add
GoogleFont.Provider.isAvailableOnDeviceextension for debugging help. (I64e31) - Add
GoogleFont.Providerconstructor for use with@ArrayRes(Ic5ee1, b/225984280) Compose GoogleFontis now calledFont(GoogleFont), API remains stable otherwise. (I125f2)
Bug Fixes
- Added lint check to material/Scaffold to ensure that the inner padding is being used (Ifb111)
Core and Core-ktx: v1.8.0-alpha07
April 6, 2022
androidx.core:core:1.8.0-alpha07 and androidx.core:core-ktx:1.8.0-alpha07 are released. Version 1.8.0-alpha07 contains these commits.
Bug Fixes
TypefaceCompatwill now respect both requested and loaded style information on API 29+. This is a behavior change when the loaded fonts are notFontWeight.NormalorFontWeight.Bold, as the actual loaded weight and style will be used. (#212, b/194553426)
External Contribution
Emoji2: v1.2.0-alpha03
April 6, 2022
androidx.emoji2:emoji2-*:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.
New Features
- No changes from the last version (this release is to support the appcompat release).
Fragment: v1.5.0-alpha05
April 6, 2022
androidx.fragment:fragment:1.5.0-alpha05, androidx.fragment:fragment-ktx:1.5.0-alpha05, and androidx.fragment:fragment-testing:1.5.0-alpha05 are released. Version 1.5.0-alpha05 contains these commits.
API Changes
Fragment'ssetHasOptionsMenu()has been deprecated. To manage menus and their menu items, the new menu APIs should be used instead as per the Fragment1.5.0-alpha04release notes. (I7b4b4, b/226438239)
Lifecycle: v2.5.0-alpha06
April 6, 2022
androidx.lifecycle:lifecycle-*:2.5.0-alpha06 is released. Version 2.5.0-alpha06 contains these commits.
New Features
- Add experimental
MutableStateoverload toSavedStateHandle.saveablefor parity withrememberSaveable(I38cfe, b/224565154)
API Changes
CreationExtrasis now abstract instead of sealed. (Ib8a7a)
Bug Fixes
- Fixed an
IllegalStateException: Already attached to lifecycleOwnererror caused bySavedStateHandleController. (I7ea47, b/215406268)
Media: v1.6.0-rc01
April 6, 2022
androidx.media:media:1.6.0-rc01 is released. Version 1.6.0-rc01 contains these commits.
Navigation: v2.5.0-alpha04
April 6, 2022
androidx.navigation:navigation-*:2.5.0-alpha04 is released. Version 2.5.0-alpha04 contains these commits.
API Changes
visibleEntriesis no longer experimental. (I4829f, b/225394514)
Bug Fixes
- NavHost now depend on
visibleEntriesfrom theNavControllerto determine which entries to compose. This means that when using nested NavHost the innerNavHostshould now properly animate out. (I4ba2b, b/225394514) - The
visibleEntriesStateFlowprovided byNavControlleris now based on the entry max Lifecycle state instead of the current Lifecycle state. This means that even if the host lifecycle of thenavControllergoes below STARTED, the list of visible entires will remain the same. (I9e2a8, b/225394514) SavedStateViewFactorynow supports usingCreationExtraseven when it was initialized with aSavedStateRegistryOwner. If extras are provided, the initialized arguments are ignored. (I6c43b, b/224844583)NavDeepLinkcan now parse Uris with a single query parameter with no value. (I0efe8, b/148905489)- Empty string are now considered as valid arguments in deep links. (I70a0d, b/217399862)
Navigation Safe Argswill no longer crash when using namespaces and noAndroidManifest.xmlis present. (I17ccf, b/227229815)
Navigation: v2.4.2
April 6, 2022
androidx.navigation:navigation-*:2.4.2 is released. Version 2.4.2 contains these commits.
Bug Fixes
- Backported from Navigation
2.5.0-alpha03:NavDeepLinksnow properly support encoded new line characters embedded in routes/deep link URIs. (I513d1, b/217815060) - Backported from Navigation
2.5.0-alpha03: Navigation SafeArgs now supports using the namespace defined in thebuild.gradlein place of the package in the AndroidManifest. (I659ef, b/217414933) - Backported from Navigation
2.5.0-alpha04:Navigation Safe Argswill no longer crash when using namespaces and noAndroidManifest.xmlis present. (I17ccf, b/227229815) - Backported from Navigation
2.5.0-alpha04: Empty string are now considered as valid arguments in deep links. (I70a0d, b/217399862)
Recyclerview: v1.3.0-alpha02
April 6, 2022
androidx.recyclerview:recyclerview:1.3.0-alpha02 is released. Version 1.3.0-alpha02 contains these commits.
API Changes
- Adds experimental
BuildCompatmethods for future SDKs (Iafd82, b/207528937) - New
ConcatAdapter.getWrappedAdapterAndPositionmethod added to allow for retrieving wrapped adapter information in situations where you don't have a ViewHolder, such as aSpanSizeLookup(I2bd4c, b/191543920)
Bug Fixes
- Integration with the new AndroidX PoolingContainer library (Ib89d2)
- Adjusts the scroll distance for accessibility action (If74ae)
Savedstate: v1.2.0-alpha02
April 6, 2022
androidx.savedstate:savedstate:1.2.0-alpha02 and androidx.savedstate:savedstate-ktx:1.2.0-alpha02 are released. Version 1.2.0-alpha02 contains these commits.
New Features
- You can now retrieve a previously registered
SavedStateProviderfrom aSavedStateRegistryviagetSavedStateProvider(). (I7ea47, b/215406268)
API Changes
- The
SavedStateRegistryOwner,SavedStateRegistryController, andRecreatorclasses have been rewritten in Kotlin. ForSavedStateRegistryOwner, this is a source incompatible change for those classes written in Kotlin - you must now override thesavedStateRegistryproperty rather than implement the previousgetSavedStateRegistry()function. This is binary compatible and source compatible for implementations written in the Java programming language. (b/220191285)
Sqlite: v2.3.0-alpha02
April 6, 2022
androidx.sqlite:sqlite:2.3.0-alpha02, androidx.sqlite:sqlite-framework:2.3.0-alpha02, and androidx.sqlite:sqlite-ktx:2.3.0-alpha02 are released. Version 2.3.0-alpha02 contains these commits.
- No significant changes since 2.3.0-alpha01
Wear Compose: v1.0.0-alpha20
April 6, 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha20, androidx.wear.compose:compose-material:1.0.0-alpha20, and androidx.wear.compose:compose-navigation:1.0.0-alpha20 are released. Version 1.0.0-alpha20 contains these commits.
New Features
- Add
edgeSwipeToDismissmodifier forSwipeToDismiss. AllowsswipeToDismissto be active only on the left edge of the viewport. Used when the center of the screen needs to be able to handle horizontal paging, such as 2-d scrolling a Map or swiping horizontally between pages.(I3fcec, b/200699800)
API Changes
- Base implementation of
CurvedModifiers, this opens the way to introduce ways to customize curved content (but noCurvedModifiersare provided yet, and the ability to create custom modifiers may be available later) (I9b8df) EdgeSwipemodifier documentation and default values update for better understanding .(I6d00d)- Add
PageIndicatorslot into Scaffold. By addingPageIndicatordirectly into Scaffold we might assure that it will be correctly shown on circular devices. (Ia6042) - Remove default Icons from
InlineSliderand Stepper parameters. This will help developers to be more attentive to localization and accessibility requirements. Usages of default icons were shown in demos and samples. (I7e6fd) - Replace Trailing and Leading parameter names with Start and End in TimeText (Iaac32)
- We have added a
SwipeToDismissBoxoverload with anonDismissedparameter to support the common usage of triggering a navigation event when the swipe gesture has completed. (I50353, b/226565726) - Removed
ExperimentalWearMaterialApiannotations fromTimeTextusage (Ide520) - We have marked
ScalingLazyList/Columnscope and info interfaces as sealed as they are not intended for external developers to implement and this will allow us to add new members in them in future without binary breaking changes. (I7d99f) - We have added a new
flingBehaviourproperty to the Picker and aPickerDefaults.flingBehaviour()method to enable configuration of the fling behavior such as adding RSB support.PickerStatenow implements theScrollableStateinterface. (Ib89c7)
Bug Fixes
- Update the Android Runtime (ART) baseline profile rules for Wear Compose libraries. ART can leverage profile rules on devices in order to compile ahead-of-time a specific subset of the application to improve the performance of the application. Note that this will have no effect on debuggable applications. (Iaa8ef)
- Improve documentation (I2c051)
Wear Tiles: v1.1.0-alpha05
April 6, 2022
androidx.wear.tiles:tiles-*:1.1.0-alpha05 is released. Version 1.1.0-alpha05 contains these commits.
New Features
- Added helper methods to convert
LayoutElementto Layout, Timeline, TimelineEntry into these classes for easier Tiles building. (I2f6d1) Colorsobject was added to the Material library to be passed in across components’ colors as a theme. (I0792c)
API Changes
- Material Text component requires text passed in into constructor. This component can now be customized by setting weight. (I25dbd)
- Removed constants from
ChipDefaultsthat are not used in the public setters. (I7baed) - Removed getters from
CompactChip&TitleChipthat don't have matching setters. (I99e85) - Removed
DEFAULT_PADDINGfromProgressIndicatorDefaults. (Idabcd) - Material components now accept
CharSequencefor content description instead of String. (I5b21a)
Bug Fixes
- Refactored setters implementation of optional parameters in Button. (Ib7135)
- Font style variant has been added to the fonts in Typography. (I8dbc6)
Wear Watchface: v1.1.0-alpha05
April 6, 2022
androidx.wear.watchface:watchface-*:1.1.0-alpha05 is released. Version 1.1.0-alpha05 contains these commits.
New Features
- You can now tell which data source sent a
ComplicationDataby inspectingComplicationData.dataSource, some watch faces may use this to customize complication display. (I44a73)
API Changes
Renderer.CanvasRendererandRenderer.GlesRendererhave been deprecated in favor ofRenderer.CanvasRenderer2andRenderer.GlesRenderer2which supportSharedAssetswhich are passed to the render methods. For java interop we've introducedListenableCanvasRenderer2andListenableGlesRenderer2. (I31ffa)- Added
@WatchFaceFlavorsExperimentalability to define flavors - preconfigured list of styled watchfaces (I04dd0) Renderer.sharedAssetsis now a StateFlow and we've removed the unusedRenderer.SharedAssetsFactory(I12ac5)UserStyleSchema.userStyleSettingsis not deprecated anymore (Iba7e3)- We've added
HeadlessWatchFaceClient.getUserStyleSchemaDigestHashwhich allows aHeadlessWatchFaceClientto avoid the relatively low overhead of passing the schema over AIDL before computing the digest hash. (I33597) - We've added
isUserStyleSchemaStatictoWatchFaceMetadataClientwhich is true if and only if theUserStyleSchemacan be relied on not to change unless the watch face APK is updated. (I45a3f) - We have added
getDigestHashtoUserStyleSchemawhich computes a digest hash of the schema. This can be used to efficiently determine if theUserStyleSchemahas changed. (I2063d) METADATA_KEY_DATA_SOURCE_DEFAULT_CONFIGURATION_SUPPORTEDrenamed toMETADATA_KEY_DATA_SOURCE_DEFAULT_CONFIG_SUPPORTED(I9ba5d)UserStyleSetting.OnWatchEditorDatahas been renamed toUserStyleSetting.WatchFaceEditorData, it contains data that's used purely by the on watch face editor. (If3afb)
WorkManager: v2.8.0-alpha02
April 6, 2022
androidx.work:work-*:2.8.0-alpha02 is released. Version 2.8.0-alpha02 contains these commits.
API Changes
- Constraints can now be directly constructed rather than using Builder, which is convenient for Kotlin users. (Idc390, b/137568653)
- Added the ability to check if
WorkManagerhas been initialized. Also, added a newgetConfiguration()API for library developers to get the configuration thatWorkManagerwas initialized with. (I6eff3, b/212300336)