Releases: mahozad/androidx-release-notes
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
2023-05-04
Test:
2023-05-02
Benchmark: v1.2.0-alpha14
May 3, 2023
androidx.benchmark:benchmark-*:1.2.0-alpha14 is released. Version 1.2.0-alpha14 contains these commits.
Bug Fixes
- Fix
FrameTimingMetricignoring frames with inconsistent frame IDs. This would cause some animations on recent platform versions (API 31+) to ignore many frames whileRenderThreadwas animating (e.g. during a ripple). (I747d2, b/279088460) - Fixed trace processor parsing for traces larger than 64Mb. (Ief831, b/269949822)
- Fixed baseline profile generation on Android U failing because of the different output of
pm dump-profilescommand. (Id1392, b/277645214) - Fix GPU clock locking script to compare strings correctly (I53e54, b/213935715)
Browser: v1.6.0-alpha01
May 3, 2023
androidx.browser:browser:1.6.0-alpha01 is released. Version 1.6.0-alpha01 contains these commits.
New Features
- Added Engagement Signals API, which allows developers to receive callbacks for user interactions on the web page such as scrolls. (I835e6)
API Changes
- Updated Engagement Signals API to simplify the API surface on the Custom Tabs implementation side. (Iaa6dc)
Compose Animation: v1.4.3
May 3, 2023
androidx.compose.animation:animation:1.4.3, androidx.compose.animation:animation-core:1.4.3, and androidx.compose.animation:animation-graphics:1.4.3 are released with no changes (only a version bump).
Compose Compiler: v1.4.7
May 3, 2023
androidx.compose.compiler:compiler:1.4.7, androidx.compose.compiler:compiler-daemon:1.4.7, and androidx.compose.compiler:compiler-hosted:1.4.7 are released. Version 1.4.7 contains these commits.
New Features
- Support for Kotlin 1.8.21
- Added primitive versions of the
StateAPI, allowing Int, Long, Float, and Double values to be tracked inStateobjects without incurring penalties for autoboxing.
Compose Foundation: v1.4.3
May 3, 2023
androidx.compose.foundation:foundation:1.4.3 and androidx.compose.foundation:foundation-layout:1.4.3 are released with no changes (only a version bump).
Compose Material: v1.4.3
May 3, 2023
androidx.compose.material:material-*:1.4.3 is released with no changes (only a version bump).
Compose Runtime: v1.4.3
May 3, 2023
androidx.compose.runtime:runtime-*:1.4.3 is released with no changes.
Compose UI: v1.4.3
May 3, 2023
androidx.compose.ui:ui-*:1.4.3 is released. Version 1.4.3 contains these commits.
Bug Fixes
- Fixed an issue where
AndroidViewmay not be laid out correctly when used with certain Modifiers. (I4dc77, b/274797771) - Fixed a bug in 2D Focus Search that affected
DropDownMenus (b/276811828) - Fixed a bug in custom focus enter/exit properties that only ran the enter/exit block the first time the lambda was invoked (b/277234245)
- Fixed a regression in the focus system that caused a crash while reading
focusProperties. (b/271324781, b/274897776)
credentials: v1.0.0-alpha08
May 3, 2023
androidx.credentials:credentials:1.0.0-alpha08 and androidx.credentials:credentials-play-services-auth:1.0.0-alpha08 are released. Version 1.0.0-alpha08 contains these commits.
Bug Fixes
- Improved debug output readability and error messages.
Mediarouter: v1.4.0
May 3, 2023
androidx.mediarouter:mediarouter:1.4.0 and androidx.mediarouter:mediarouter-testing:1.4.0 are released. Version 1.4.0 contains these commits.
** Important changes since 1.3.1 **
- Add
SystemOutputSwitcherDialogController#showDialogto show the system’s output switcher dialog, or the Bluetooth Settings Fragment on Wear devices where the system output switcher is not available. (Ic3d78) - Fix regression causing application crashes due
IllegalArgumentExceptioninMediaRouterProvider.notifyDynamicRoutesChanged(7d17ea). - Add
MediaRouteDescriptor.Builder.clearControlFilters(I3a4e1) - Add missing
MainThreadannotations inMediaRouter. (I3ef6e) - Add broadcast receiver export flags on API 33+ (b2a663).
Paging: v3.2.0-alpha05
May 3, 2023
androidx.paging:paging-*:3.2.0-alpha05 is released. Version 3.2.0-alpha05 contains these commits.
API Changes
- The Paging Testing API of
asSnapshotnow defaults itsloadOperationsparameter to an empty lambda. This allows callingasSnapshotwithout passing in any load operations to retrieve the data from the initial refresh load. (Ied354, b/277233770)
Documentation Improvements
- Updated the documentation on
asPagingSourceFactory()to clarify that it is an extension method on aFlowwhich returns a reusable factory for generatingPagingSourceinstances. (I5ff4f,
2023-04-25
Test:
2023-04-19
Activity: v1.7.1
April 19, 2023
androidx.activity:activity:1.7.1, androidx.activity:activity-compose:1.7.1, and androidx.activity:activity-ktx:1.7.1 are released. Version 1.7.1 contains these commits.
Bug Fixes
- The
ReportFullyDrawExecuterno longer leaks when usingComponentActivitywithActivityScenario. (Id2ff2, b/277434271)
CameraX: v1.3.0-alpha06
April 19, 2023
androidx.camera:camera-*:1.3.0-alpha06 is released. Version 1.3.0-alpha06 contains these commits.
New Features
- Concurrent camera is a new feature introduced from Android 11, which supports simultaneous streaming of camera devices, for example, it allows a device to have both the front and back cameras operating at the same time. CameraX currently only supports dual concurrent cameras, which allows two cameras operating at the same time, with at most two {@link UseCase}s bound for each. The max resolution is 720p or 1440p, more details in the following link, see CameraManager#getConcurrentCameraIds()
- Introducing the new
ResolutionSelectorAPI which covers the following features:- Applications can specify aspect ratio and resolution strategies to select the best resolution for their needs.
- All sizes and aspect ratio parameters are expressed in the coordinates of the camera device sensor.
- Applications can implement a custom resolution filter to arrange the supported sizes in the desired order.
- Applications can also enable high resolution capture to obtain higher resolution images. However, please note that using a high resolution may result in slower capture times.
- Added
VideoCapturemirroring APIs. Videos recorded byVideoCaptureare not mirrored by default. However, the camera preview is mirrored on the front camera by default.VideoCapturemirroring APIs make it possible to align to the camera preview when using the front camera. There are threeMirrorMode,OFF,ONandON_FRONT_ONLY. To align to the camera preview, it is recommended to useON_FRONT_ONLYwhich means that mirroring is not enabled for the rear camera but is enabled for the front camera.
API Changes
- Exposed new
ResolutionSelectorAPI. Applications can specify aspect ratio and resolution strategies with fallback rules or a custom resolution filter to get the desired results. Applications can specify a flag to enable high resolution capture. This will allow CameraX to select higher resolutions when taking photos or videos. However, please note that using a high resolution may result in slower capture times. (Ibed95) - The FPS ranges supported by the AE algorithm can now be queried via
CameraInfo#getSupportedFrameRateRanges(). (Iaa67f) - Consolidate the names of all frame rate methods into using 'FrameRate'. Correct the javadoc mistake in
VideoCapture#getTargetFrameRate()(I83304) - Deprecated the legacy
setTargetAspectRatioandsetTargetResolutionAPI. Please use the newResolutionSelectorAPI instead. (I542c3) - Added public APIs for concurrent dual camera, including
List<List<CameraInfo>> getAvailableConcurrentCameraInfos()ConcurrentCamera bindToLifecycle(@NonNull ConcurrentCameraConfig concurrentCameraConfig)boolean isConcurrentCameraModeOn()andConcurrentCameraConfig,SingleCameraConfigandConcurrentCamera(Iab1c1)
- Make
ImageProcessor.Response#getOutputImageNonNull (Ib9c60) - Added
VideoCapturemirroring APIs, includingVideoCapture.Builder.setMirrorMode(int)andVideoCapture.getMirrorMode(). The APIs are useful for applications require the video recording to be consistent with common camera preview behavior, i.e. the rear camera preview is not mirrored but the front camera preview is mirrored. (I713b6, b/194634656) - Add
setTargetFrameRate()API in theVideoCapture.BuilderandgetTargetFramerate()API inVideoCapture(I109d4) - Make
SurfaceOutputextending Closable and hide SurfaceOutput.Event's public constructor. (I60ea8) - Added
Recording.muteto dynamically mute or unmute an in-processing recording.RecordingStatswill containAudioStats.AUDIO_STATE_MUTEDwhen the in-processing recording is muted explicitly. (Ie17fc) - Made
#setEffects()parameter non-null. Add a#clearEffects()API for clearing effects. The app should call#clearEffects()to remove effects. (I4b4d9) - Add a second constructor for
ViewfinderSurfaceRequest.Builderto take a builder for copy constructor (I621a7)
Bug Fixes
- Fixed the issue where apps invoking Extensions API could crash when closing the camera (Ib27e5)
- Fixed an issue where
VideoCapturecould not work with the front camera on some devices. For example, on Samsung Galaxy S23 and Xiaomi 2107113SG. (Ibec7e, b/270656244) - Fixed the issue where taking pictures using File in the external storage public folder will always fail in Android 10 or above. Please note that in Android 10, taking pictures using File in the external storage public folder also requires setting
requestLegacyExternalStorageto true in application tag. (I11b2c) - Fixed a
RejectedExecutionExceptioncrash inDefaultSurfaceProcessor. The crash could happen whenVideoCaptureis bound and the activity is paused. (Idb46a, b/273713906)
Compose Animation: v1.4.2
April 19, 2023
2023-04-12
Activity: v1.8.0-alpha03
April 12, 2023
androidx.activity:activity:1.8.0-alpha03, androidx.activity:activity-compose:1.8.0-alpha03, and androidx.activity:activity-ktx:1.8.0-alpha03 are released. This was released from an internal branch.
Core and Core-ktx: v1.12.0-alpha03
April 12, 2023
androidx.core:core:1.12.0-alpha03, androidx.core:core-ktx:1.12.0-alpha03, and androidx.core:core-testing:1.12.0-alpha03 are released. This was released from an internal branch.
API Changes
- Unhides
NotificationCompat.TvExtender(aosp/01c67677e9310b2cf4c536d7e951e117d6cce64a) - Added public methods to access M3HCT parameters and turn M3HCT values into ARGB (aosp/06810598aa94bee731bbe0d277933b8b9614934e)
- Added
NotificationManager.getCurrentInterruptionFilter(aosp/b0c6940639e35371d212a7ebd7dbf01c14fc7710) - Added
getCurrentInterruptionFiltertoNotifManagerCompat(aosp/516143e05f824ff49bde3c0c97344a2924867d30) - Deprecated
app.BundleCompatin favor ofos.BundleCompat(aosp/bf6169fe9ee1113065d0cf380bd2e09f31ce0a40) - Added
TestConsumerso developers can record values in a test. (aosp/f75a4913940e710842168c832a7f57c2dcae4fdf) - Added
TestConsumerso developers can record values in a test.(aosp/67ad4e2c6488772b7c9a061ee6ca01bba23649f7)
Bug Fixes
- Fixed a bug where
unregisterGnssMeasurementsCallback()does not work properly below Android R. (aosp/c5a97c4ee956f87d229ec892f2b8849f392e956c)
credentials: v1.2.0-alpha03
April 12, 2023
androidx.credentials:credentials:1.2.0-alpha03 and androidx.credentials:credentials-play-services-auth:1.2.0-alpha03 are released. This was released from an internal branch.
Compose Compiler: v1.4.5
April 12, 2023
androidx.compose.compiler:compiler:1.4.5, androidx.compose.compiler:compiler-daemon:1.4.5, and androidx.compose.compiler:compiler-hosted:1.4.5 are released. Version 1.4.5 contains these commits.
New Features
Support for Kotlin 1.8.20
Bug Fixes
- Propagate requirement of composable invoke operator override to classes and interfaces that are extending lambda interfaces with corresponding annotations.f8f2f78a1a769c2373201027f12700e772e4e97e
- Allows usage of
@Composableannotation ongetValueoperator and marks generated getter for delegate as composable in IR to ensure it is correctly transformed later. f174f6ee60ca957d5cb6d19a5bd02a88267cdf40 - Fix internal compose runtime error (Expected
applyChanges()to have been called) for inline functions.b/274786923 - Avoid capturing
ProcessCancelledExceptionas it has a special meaning in the IDE.b/274725600
External Contribution
- Improved support for Composable functions in Kotlin/Native.f52b6aeed22400dd4f4a4f05559a9aa42642402c
2023-04-05
Benchmark: v1.2.0-alpha13
April 5, 2023
androidx.benchmark:benchmark-*:1.2.0-alpha13 is released. Version 1.2.0-alpha13 contains these commits.
API Changes
- Added profile type parameter when generating baseline profiles to support upcoming startup profile feature (Ie20d7, b/275093123)
- Added new experimental
TraceMetricAPI for defining fully custom metrics based on content of a Perfetto trace. (I4ce31, b/219851406) - Add an experimental metric to determine the number of page faults during a benchmark. (I48db0)
Compose Animation: v1.4.1
April 5, 2023
androidx.compose.animation:animation:1.4.1, androidx.compose.animation:animation-core:1.4.1, and androidx.compose.animation:animation-graphics:1.4.1 are released with no changes. Version 1.4.1 contains these commits.
Compose Animation: v1.5.0-alpha02
April 5, 2023
androidx.compose.animation:animation-*:1.5.0-alpha02 is released. Version 1.5.0-alpha02 contains these commits.
New Features
- New experimental API to support lookahead in
SubcomposeLayout. This will allowSubcomposeLayoutto function properly in aLookaheadScope. More out-of-the-box support for specific subtypes ofSubcomposeLayoutwill come soon.
API Changes
- New
SubcomposeLayoutAPI that takes an additional intermediate measure policy for handling measure/layout logic during lookahead-based animations. (I017d3)
Compose Foundation: v1.4.1
April 5, 2023
androidx.compose.foundation:foundation:1.4.1 and androidx.compose.foundation:foundation-layout:1.4.1 are released. Version 1.4.1 contains these commits.
Compose Foundation: v1.5.0-alpha02
April 5, 2023
androidx.compose.foundation:foundation:1.5.0-alpha02 and androidx.compose.foundation:foundation-layout:1.5.0-alpha02 are released. Version 1.5.0-alpha02 contains these commits.
API Changes
- Added support for fixed size cells in
LazyGridand arranging them with cross axis arrangement. (I83ed9, b/235121277, b/267942510) - Added support for fixed size lanes in
LazyStaggeredGridand arranging them with cross axis arrangement. (I7d519) UrlAnnotations inAnnotatedStrings can now be opened via accessibility services likeTalkBack. (If4d82, b/253292081)- Added the
InsertTextAtCursorsemantics action for text fields. (I11ed5) - Text-related test actions (e.g.
performTextInput) will now request focus directly, using the semantics action, instead of clicking on the field. (I6ed05) - Adds support for cross axis spacing/arrangement using the
verticalArrangementinFlowRowandhorizontalArrangementinFlowColumn. We also remove the top-levelverticalAlignmentandhorizontalAlignmentinFlowRow/FlowColumn. Developers can useModifier.aligninstead. This reduces confusion between the naming conventions ofverticalAlignmentandverticalArrangement. (I87b60, b/268365538)
Compose Material: v1.4.1
April 5, 2023
androidx.compose.material:material-*:1.4.1 is released. Version 1.4.1 contains these commits.
Compose Material: v1.5.0-alpha02
April 5, 2023
androidx.compose.material:material-*:1.5.0-alpha02 is released. Version 1.5.0-alpha02 contains these commits.
Bug Fixes
- Fixed a bug where
BottomSheetScaffoldwould crash when provided with empty content for slots. (Ib24a5, b/235588730) - Fixes
PullRefreshIndicatorintercepting clicks / pointer events (2494256, b/271777421)
Compose Material 3: v1.1.0-beta02
April 5, 2023
androidx.compose.material3:material3:1.1.0-beta02 and androidx.compose.material3:material3-window-size-class:1.1.0-beta02 are released. Version 1.1.0-beta02 contains these commits.
API Changes
SheetStatenow has optionalskipHiddenStateparameterrememberStandardBottomSheetStatenow has optionalskipHiddenStateparameterBottomSheetScaffoldnow has a defined Hidden anchor, though it is disabled by defaultSheetState.requireOffsetdocumentation has been updatedBottomSheetDefaults.MinimizedShapehas been renamed asBottomSheetDefaults.HiddenShape(I839f4, b/273870234)
Bug Fixes
- Do not switch the dial face from hour to minute when touch exploration is enabled. (I717d0)
ModalBottomSheetandBottomSheetScaffolddrag handle semantics are now merged. (
2023-03-24
Annotation: v1.7.0-alpha02
March 24, 2023
androidx.annotation:annotation-*:1.7.0-alpha02 is released.
Bug Fixes
- Removed dependency constraints from Maven artifacts to workaround a build problem in Kotlin Native Targets (b/274786186, KT-57531).
Collection: v1.3.0-alpha04
March 24, 2023
androidx.collection:collection-*:1.3.0-alpha04 is released.
Bug Fixes
- Removed dependency constraints from Maven artifacts to workaround a build problem in Kotlin Native Targets (b/274786186, KT-57531).
DataStore: v1.1.0-alpha03
March 24, 2023
androidx.datastore:datastore-*:1.1.0-alpha03 is released.
Bug Fixes
- Removed dependency constraints from Maven artifacts to workaround a build problem in Kotlin Native Targets (b/274786186, KT-57531).
2023-03-22@06PM
Activity: v1.7.0
March 22, 2023
androidx.activity:activity:1.7.0, androidx.activity:activity-compose:1.7.0, and androidx.activity:activity-ktx:1.7.0 are released. Version 1.7.0 contains these commits.
Important changes since 1.6.0
- The Photo Picker activity contracts in
PickVisualMediaandPickMultipleVisualMediahave been updated to contain an additional fallback for whenMediaStore.ACTION_PICK_IMAGESis unavailable that allows OEMs and system apps, such as Google Play services, to provide a consistent Photo Picker experience on a wider range of Android devices and API levels by implementing the fallback action. The Photo Picker will use this fallback if it is available before falling back to usingIntent.ACTION_OPEN_DOCUMENT, which remains to support all API 19 and higher devices. ComponentDialognow implementsSavedStateRegistryOwnerand has access to its ownSavedStateRegistryand sets theSavedStateRegistryOwnerfor itsViewTree. It is now possible to use Jetpack Compose within aComponentDialogas it meets both theLifecycleOwnerandSavedStateRegistryOwnerattached to the Window via theViewTreeAPIs requirements.IntentSenderRequest.Builder.setFlags()now allows you to set multiple flags fromIntent, rather than only a single flag.
Kotlin Conversion
A number of Activity classes have been converted to Kotlin. All converted classes still retain their binary compatibility with previous versions. The following classes have source incompatible changes for classes written in Kotlin: ActivityResultRegistryOwner, OnBackPressedDispatcherOwner.
The table below provides the source conversions for the new version of Activity:
| Activity 1.5 | Activity 1.6 |
|---|---|
override fun getActivityResultRegistry() = activityResultRegistry |
override val activityResultRegistry = activityResultRegistry |
override fun getOnBackPressedDispatcher() = onBackPressedDispatcher |
override val onBackPressedDispatcher = onBackPressedDispatcher |
These classes were also converted to Kotlin, but remain source compatible: ContextAware, ContextAwareHelper, OnContextAvailableListener, IntentSenderRequest, and OnBackPressedDispatcher
FullyDrawnReporter APIs
ComponentActivity now provides a FullyDrawnReporter instance that allows multiple components to report when they are ready for interaction. ComponentActivity will wait for all components to complete before calling reportFullyDrawn() on your behalf. These APIs take care of the timing requirements for you and do not need to be called as part of an onDraw call.
These APIs are encouraged to enable:
- Signaling the Android Runtime when startup completes, to ensure all of the code run during a multi-frame startup sequence is included and prioritized for background compilation.
- Signaling Macrobenchmark and Play Vitals when your application should be considered fully drawn for startup metrics, so you can track performance.
Three Activity Compose APIs have been added to make it more convenient to use the FullyDrawnReporter from individual composables:
ReportDrawnindicates that your composable is immediately ready for interaction.ReportDrawnWhentakes a predicate (i.e.,list.count > 0) to indicate when your composable is ready for interaction.ReportDrawnAftertakes a suspending method that, when it completes, indicates that you are ready for interaction.
Dependency Updates
- Activity now depends on Lifecycle
2.6.1. (8fc31d) - Activity now depends on ProfileInstaller
1.3.0. (83d3b1)
Annotation: v1.7.0-alpha01
March 22, 2023
androidx.annotation:annotation-*:1.7.0-alpha01 is released. Version 1.7.0-alpha01 contains these commits.
New Features
- Includes Kotlin Multiplatform artifacts targeting iOS, Linux, and MacOS platforms.
- You can now use Annotations in KMM projects. Note that non-Android targets of Annotations are still experimental but we decided to merge versions to make it easier for developers to try them. Specifically, some annotations might move between common and platform specific code during the alpha development as we finalize the boundaries.
Benchmark: v1.2.0-alpha12
March 22, 2023
androidx.benchmark:benchmark-*:1.2.0-alpha12 is released. Version 1.2.0-alpha12 contains these commits.
New Features
- The new baseline profile gradle plugin is released in alpha version, making it easier to generate a baseline profile and simplifying the developer workflow.
API Changes
- Removed Perfetto tracing support on API 21 and 22, which includes both Microbenchmarks and the experimental
PerfettoTraceAPIs. Prior to this version,UiAutomationconnections were unreliable on some devices. (I78e8c) - Added public experimental API for
PerfettoTraceProcessorto enable parsing trace content. This is a step toward fully custom metrics based on Perfetto trace data. (I2659e, b/219851406)
CameraX: v1.2.2
March 22, 2023
androidx.camera:camera-*:1.2.2 is released. Version 1.2.2 contains these commits.
Bug Fixes
- Fixed the issue where CameraX Extensions don't work properly when proguard is enabled on some devices such as Pixel (I90aa2)
CameraX: v1.3.0-alpha05
March 22, 2023
androidx.camera:camera-*:1.3.0-alpha05 is released. Version 1.3.0-alpha05 contains these commits.
API Changes
- Added
VideoCapturerotation APIs, includingVideoCapture.Builder.setTargetRotation(int),VideoCapture.setTargetRotation(int),VideoCapture.setTargetRotationDegrees(int)and
2023-03-22@05PM
Activity: v1.7.0
March 22, 2023
androidx.activity:activity:1.7.0, androidx.activity:activity-compose:1.7.0, and androidx.activity:activity-ktx:1.7.0 are released. Version 1.7.0 contains these commits.
Important changes since 1.6.0
- The Photo Picker activity contracts in
PickVisualMediaandPickMultipleVisualMediahave been updated to contain an additional fallback for whenMediaStore.ACTION_PICK_IMAGESis unavailable that allows OEMs and system apps, such as Google Play services, to provide a consistent Photo Picker experience on a wider range of Android devices and API levels by implementing the fallback action. The Photo Picker will use this fallback if it is available before falling back to usingIntent.ACTION_OPEN_DOCUMENT, which remains to support all API 19 and higher devices. ComponentDialognow implementsSavedStateRegistryOwnerand has access to its ownSavedStateRegistryand sets theSavedStateRegistryOwnerfor itsViewTree. It is now possible to use Jetpack Compose within aComponentDialogas it meets both theLifecycleOwnerandSavedStateRegistryOwnerattached to the Window via theViewTreeAPIs requirements.IntentSenderRequest.Builder.setFlags()now allows you to set multiple flags fromIntent, rather than only a single flag.
Kotlin Conversion
A number of Activity classes have been converted to Kotlin. All converted classes still retain their binary compatibility with previous versions. The following classes have source incompatible changes for classes written in Kotlin: ActivityResultRegistryOwner, OnBackPressedDispatcherOwner.
The table below provides the source conversions for the new version of Activity:
| Activity 1.5 | Activity 1.6 |
|---|---|
override fun getActivityResultRegistry() = activityResultRegistry |
override val activityResultRegistry = activityResultRegistry |
override fun getOnBackPressedDispatcher() = onBackPressedDispatcher |
override val onBackPressedDispatcher = onBackPressedDispatcher |
These classes were also converted to Kotlin, but remain source compatible: ContextAware, ContextAwareHelper, OnContextAvailableListener, IntentSenderRequest, and OnBackPressedDispatcher
FullyDrawnReporter APIs
ComponentActivity now provides a FullyDrawnReporter instance that allows multiple components to report when they are ready for interaction. ComponentActivity will wait for all components to complete before calling reportFullyDrawn() on your behalf. These APIs take care of the timing requirements for you and do not need to be called as part of an onDraw call.
These APIs are encouraged to enable:
- Signaling the Android Runtime when startup completes, to ensure all of the code run during a multi-frame startup sequence is included and prioritized for background compilation.
- Signaling Macrobenchmark and Play Vitals when your application should be considered fully drawn for startup metrics, so you can track performance.
Three Activity Compose APIs have been added to make it more convenient to use the FullyDrawnReporter from individual composables:
ReportDrawnindicates that your composable is immediately ready for interaction.ReportDrawnWhentakes a predicate (i.e.,list.count > 0) to indicate when your composable is ready for interaction.ReportDrawnAftertakes a suspending method that, when it completes, indicates that you are ready for interaction.
Dependency Updates
- Activity now depends on Lifecycle
2.6.1. (8fc31d) - Activity now depends on ProfileInstaller
1.3.0. (83d3b1)
Annotation: v1.7.0-alpha01
March 22, 2023
androidx.annotation:annotation-*:1.7.0-alpha01 is released. Version 1.7.0-alpha01 contains these commits.
New Features
- Includes Kotlin Multiplatform artifacts targeting iOS, Linux, and MacOS platforms.
- You can now use Annotations in KMM projects. Note that non-Android targets of Annotations are still experimental but we decided to merge versions to make it easier for developers to try them. Specifically, some annotations might move between common and platform specific code during the alpha development as we finalize the boundaries.
Benchmark: v1.2.0-alpha12
March 22, 2023
androidx.benchmark:benchmark-*:1.2.0-alpha12 is released. Version 1.2.0-alpha12 contains these commits.
New Features
- The new baseline profile gradle plugin is released in alpha version, making it easier to generate a baseline profile and simplifying the developer workflow.
API Changes
- Removed Perfetto tracing support on API 21 and 22, which includes both Microbenchmarks and the experimental
PerfettoTraceAPIs. Prior to this version,UiAutomationconnections were unreliable on some devices. (I78e8c) - Added public experimental API for
PerfettoTraceProcessorto enable parsing trace content. This is a step toward fully custom metrics based on Perfetto trace data. (I2659e, b/219851406)
CameraX: v1.2.2
March 22, 2023
androidx.camera:camera-*:1.2.2 is released. Version 1.2.2 contains these commits.
Bug Fixes
- Fixed the issue where CameraX Extensions don't work properly when proguard is enabled on some devices such as Pixel (I90aa2)
CameraX: v1.3.0-alpha05
March 22, 2023
androidx.camera:camera-*:1.3.0-alpha05 is released. Version 1.3.0-alpha05 contains these commits.
API Changes
- Added
VideoCapturerotation APIs, includingVideoCapture.Builder.setTargetRotation(int),VideoCapture.setTargetRotation(int),VideoCapture.setTargetRotationDegrees(int)and