Skip to content

Releases: mahozad/androidx-release-notes

2024-08-27

27 Aug 12:55

Choose a tag to compare

Media3: v1.4.1

August 27, 2024

androidx.media3:media3-*:1.4.1 is released. Version 1.4.1 contains these commits.

  • ExoPlayer:
    • Handle preload callbacks asynchronously in PreloadMediaSource (#1568).
    • Allow playback regardless of buffered duration when loading fails (#1571).
  • Extractors:
    • MP3: Fix Searched too many bytes error by correctly ignoring trailing non-MP3 data based on the length field in an Info frame (#1480).
  • Text:
    • TTML: Fix handling of percentage tts:fontSize values to ensure they are correctly inherited from parent nodes with percentage tts:fontSize values.
    • Fix IndexOutOfBoundsException in LegacySubtitleUtil due to incorrectly handling the case of the requested output start time being greater than or equal to the final event time in the Subtitle (#1516).
  • DRM:
    • Fix android.media.MediaCodec$CryptoException: Operation not supported in this configuration: ERROR_DRM_CANNOT_HANDLE error on API 31+ devices playing L1 Widevine content. This error is caused by an incomplete implementation of the framework MediaDrm.requiresSecureDecoder method (#1603).
  • Effect:
    • Add a release() method to GlObjectsProvider.
  • Session:
    • Transform a double-tap of KEYCODE_HEADSETHOOK into a 'seek to next' action, as documented (#1493).
    • Handle KEYCODE_HEADSETHOOK as a 'play' command in MediaButtonReceiver when deciding whether to ignore it to avoid a ForegroundServiceDidNotStartInTimeException (#1581).
  • RTSP Extension:
    • Skip invalid Media Descriptions in SDP parsing (#1087).

2024-08-22

22 Aug 21:37

Choose a tag to compare

Annotation: v1.9.0-alpha02

August 21, 2024

androidx.annotation:annotation-*:1.9.0-alpha02 is released. Version 1.9.0-alpha02 contains these commits.

New Features

Annotation-Experimental: v1.5.0-alpha01

August 21, 2024

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

API Changes

  • Add message to RequiresOptIn to match the Kotlin stdlib annotation with default empty string value. (I1f50e)

Benchmark: v1.3.0

August 21, 2024

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

Microbenchmark changes since 1.2.0

  • Method tracing is on by default in microbenchmarks when running on most devices
    • Method tracing runs as a separate phase, after measurements
    • Method tracing on some platform and ART versions will affect later measurement phases - on these versions, method tracing is off by default and a warning is printed to Studio output
  • Main thread benchmarks and ANRs
    • Added measureRepeatedOnMainThread for UI thread benchmarks (e.g. those that interact with Compose/View UIs) to avoid ANRs when running for many seconds.
    • Method traces are skipped if expected to overrun the ANR avoidance deadline. Set androidx.benchmark.profiling.skipWhenDurationRisksAnr to false to disable this behavior (not recommended for CI runs).
  • Minification
    • Embedded proguard rules to improve microbenchmarking with minification enabled
    • Minification/R8 in a library module requires AGP 8.3, and can be enabled via android.buildTypes.release.androidTest.enableMinification in your build.gradle
    • Added experimental BlackHole.consume() API to prevent dead code elimination (If6812, b/286091643)
  • Metrics
    • Experimental cpu event counter feature (metrics from perf_event_open, which requires root on most versions of the platform), access via InstrumentationArgument androidx.benchmark.cpuEventCounter.enable (can be set to true), and androidx.benchmark.cpuEventCounter.events can be set e.g. to (Instructions,CpuCycles). This should be supported on some userdebug emulators, but support has not been tested across

MACRObenchmark changes since 1.2.0

  • Method tracing overhaul for macrobenchmarks.
    • Now method traces are scoped to the duration of the measureBlock, and can capture multiple sessions if the process starts multiple times.
    • Previously, method tracing would only work for StartupMode.COLD benchmarks, and capture nothing for measureBlocks that didn't restart the target process
    • Fixed method traces flush in macrobenchmark, so that method traces should be fully captured and valid, even on slower devices. (I6349a, b/329904950)
  • Correctly dump ART profile during individual warmUp iterations when process is killed so CompilationMode.Partial(warmup=N) measurements are more accurate. (I17923)
  • Drop Shader broadcast failure message
    • Added debugging suggestions to drop shader broadcast failure message
    • Add two instrumentation arguments for overriding shader dropping behavior to workaround crashes when benchmarking apps without ProfileInstaller 1.3:
      • androidx.benchmark.dropShaders.enable=true/false : can be used to skip all shader dropping (including that done in StartupMode.Cold launches), esp when benchmarking apps that don't yet use profileinstaller 1.3
      • androidx.benchmark.dropShaders.throwOnFailure=true/false : can be used to tolerate failures when trying to drop shaders, for example when benchmarking apps without profileinstaller 1.3 (I4f573)
  • Added experimental MacrobenchmarkRule#measureRepeated variant which takes a custom PerfettoConfig for fully customized Perfetto trace recording. Note that incorrectly configured configs may cause built in Metric classes to fail. (Idfd3d, b/309841164, b/304038384)
  • Cancel background dexopt jobs before running a Macrobenchmark to reduce interference. (I989ed)
  • Macrobenchmark now waits for 1 second for the target application to flush an ART profile (previously it waited for 500 ms). (I85a50, b/316082056)
  • TraceSectionMetric overhaul
    • Note: TraceSectionMetric changes below can affect outputs in CI usage, and may create discontinuities, or break parsing
    • Sum is now the default, as most usage of this metric is for repeated events, and first would discard data in these cases
    • Changed to be more customizable, with more available modes
    • Mode names are now embedded in metric output name (in Studio and JSON)
    • Now supports slices created using Trace.{begin|end}AsyncSection.
  • Metrics
    • Power - Added PowerMetric.deviceSupportsHighPrecisionTracking, PowerMetric.deviceBatteryHasMinimumCharge() and PowerMetric.deviceSupportsPowerEnergy()
    • Renamed Metric.getResult to getMeasurements to match return type
    • Added log.w / exception labels to all startup detection failures. This does not change current behavior (so some errors throw, and others silently fail to detect the startup), just makes it more understandable. Generally the ones that Log.w() and fail to report startup metrics are those where non-frame events are missing, exceptions are thrown when startup is detected except for frame timing information (from UI/RT slices). (Id240f, b/329145809)
    • Added frameCount measurement to FrameTimingMetric to aid in discovery of scenarios where measurements change because the number of frames produced changed (new animations added, invalidation issues fixed). (
Read more

2024-08-21

21 Aug 18:41

Choose a tag to compare

Annotation: v1.9.0-alpha02

August 21, 2024

androidx.annotation:annotation-*:1.9.0-alpha02 is released. Version 1.9.0-alpha02 contains these commits.

New Features

Annotation-Experimental: v1.5.0-alpha01

August 21, 2024

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

API Changes

  • Add message to RequiresOptIn to match the Kotlin stdlib annotation with default empty string value. (I1f50e)

Benchmark: v1.3.0

August 21, 2024

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

Microbenchmark changes since 1.2.0

  • Method tracing is on by default in microbenchmarks when running on most devices
    • Method tracing runs as a separate phase, after measurements
    • Method tracing on some platform and ART versions will affect later measurement phases - on these versions, method tracing is off by default and a warning is printed to Studio output
  • Main thread benchmarks and ANRs
    • Added measureRepeatedOnMainThread for UI thread benchmarks (e.g. those that interact with Compose/View UIs) to avoid ANRs when running for many seconds.
    • Method traces are skipped if expected to overrun the ANR avoidance deadline. Set androidx.benchmark.profiling.skipWhenDurationRisksAnr to false to disable this behavior (not recommended for CI runs).
  • Minification
    • Embedded proguard rules to improve microbenchmarking with minification enabled
    • Minification/R8 in a library module requires AGP 8.3, and can be enabled via android.buildTypes.release.androidTest.enableMinification in your build.gradle
    • Added experimental BlackHole.consume() API to prevent dead code elimination (If6812, b/286091643)
  • Metrics
    • Experimental cpu event counter feature (metrics from perf_event_open, which requires root on most versions of the platform), access via InstrumentationArgument androidx.benchmark.cpuEventCounter.enable (can be set to true), and androidx.benchmark.cpuEventCounter.events can be set e.g. to (Instructions,CpuCycles). This should be supported on some userdebug emulators, but support has not been tested across

MACRObenchmark changes since 1.2.0

  • Method tracing overhaul for macrobenchmarks.
    • Now method traces are scoped to the duration of the measureBlock, and can capture multiple sessions if the process starts multiple times.
    • Previously, method tracing would only work for StartupMode.COLD benchmarks, and capture nothing for measureBlocks that didn't restart the target process
    • Fixed method traces flush in macrobenchmark, so that method traces should be fully captured and valid, even on slower devices. (I6349a, b/329904950)
  • Correctly dump ART profile during individual warmUp iterations when process is killed so CompilationMode.Partial(warmup=N) measurements are more accurate. (I17923)
  • Drop Shader broadcast failure message
    • Added debugging suggestions to drop shader broadcast failure message
    • Add two instrumentation arguments for overriding shader dropping behavior to workaround crashes when benchmarking apps without ProfileInstaller 1.3:
      • androidx.benchmark.dropShaders.enable=true/false : can be used to skip all shader dropping (including that done in StartupMode.Cold launches), esp when benchmarking apps that don't yet use profileinstaller 1.3
      • androidx.benchmark.dropShaders.throwOnFailure=true/false : can be used to tolerate failures when trying to drop shaders, for example when benchmarking apps without profileinstaller 1.3 (I4f573)
  • Added experimental MacrobenchmarkRule#measureRepeated variant which takes a custom PerfettoConfig for fully customized Perfetto trace recording. Note that incorrectly configured configs may cause built in Metric classes to fail. (Idfd3d, b/309841164, b/304038384)
  • Cancel background dexopt jobs before running a Macrobenchmark to reduce interference. (I989ed)
  • Macrobenchmark now waits for 1 second for the target application to flush an ART profile (previously it waited for 500 ms). (I85a50, b/316082056)
  • TraceSectionMetric overhaul
    • Note: TraceSectionMetric changes below can affect outputs in CI usage, and may create discontinuities, or break parsing
    • Sum is now the default, as most usage of this metric is for repeated events, and first would discard data in these cases
    • Changed to be more customizable, with more available modes
    • Mode names are now embedded in metric output name (in Studio and JSON)
    • Now supports slices created using Trace.{begin|end}AsyncSection.
  • Metrics
    • Power - Added PowerMetric.deviceSupportsHighPrecisionTracking, PowerMetric.deviceBatteryHasMinimumCharge() and PowerMetric.deviceSupportsPowerEnergy()
    • Renamed Metric.getResult to getMeasurements to match return type
    • Added log.w / exception labels to all startup detection failures. This does not change current behavior (so some errors throw, and others silently fail to detect the startup), just makes it more understandable. Generally the ones that Log.w() and fail to report startup metrics are those where non-frame events are missing, exceptions are thrown when startup is detected except for frame timing information (from UI/RT slices). (Id240f, b/329145809)
    • Added frameCount measurement to FrameTimingMetric to aid in discovery of scenarios where measurements change because the number of frames produced changed (new animations added, invalidation issues fixed). (
Read more

2024-08-14

14 Aug 18:40

Choose a tag to compare

Monitor 1.7.2: monitor 1.7.2

August 14, 2024

androidx.test:monitor:1.7.2 is released.

Bug Fixes

  • Fix ActivityInvoker$-CC ClassNotFoundErrors when used with older androidx.test:core

Runner 1.6.2: runner 1.6.2

August 14, 2024

androidx.test:runner:1.6.2 is released.

2024-08-07

07 Aug 18:41

Choose a tag to compare

Annotation: v1.8.2

August 7, 2024

androidx.annotation:annotation-*:1.8.2 is released. Version 1.8.2 contains these commits.

Bug Fixes

AppSearch: v1.1.0-alpha04

August 7, 2024

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

New Features

  • Support for new PlayServicesStorage implementation, which allows using AppSearch on older devices without incurring the significant apk size cost of LocalStorage. This storage implementation works by storing app data within the Play Services app.
  • Support for new APIs on devices running Android 15.
  • Support searching the database by embedding vectors, allowing for fuzzy matching. (I2b41b)
  • Support parent types and polymorphism within the AppSearch schema model. (I06118)
  • Support the TakenAction API which allows apps to report when results were clicked or abandoned, for quality boosting during subsequent searches. (I54091)
  • Support classes with builders in the annotation processor by introducing the new @Document.BuilderProducer annotation. (Iec30a)
  • Support finer-grained control over which properties of a nested document get indexed. (Iec30a)
  • Support for filtering searches to certain document properties. (Ib2659)
  • Support finer-grained visibility settings by allowing OR and AND of visibility settings. (I0274b)
  • Support for granting visibility of data to all apps that can see the existence of the owning app (public visibility). (I992e4)
  • Support for retrieving only results that have data populated in a certain property. (I7d94f)
  • Support for retrieving enterprise contacts in the personal profile. (Idd587)

API Changes

  • Add indexableNestedPropertiesList and inheritIndexableNestedPropertiesFromSuperclass annotation parameters to AppSearch's Document.DocumentProperty annotation to allow indexing specific nested property paths. (Iec30a)
  • Support builder constructor to create builder instances in AppSearch annotation processor (I265c9)
  • Update AppSearch annotation processor to support setting parent types for polymorphism (I06118)
  • Adds GetSchemaRequest method for clearing visibility settings (I38379)
  • Support addParentType in AppSearch for polymorphism (Ida14a)
  • Add APIs for additional ranking expressions (I5d9f4)
  • Add SearchAction API (I54091)
  • Adds description field for AppSearch types (I84762)
  • Onboard embedding search query and ranking APIs to AppSearch (I0f6c3)
  • Removes getDeletionPropagation (I21192)

Benchmark: v1.3.0-rc01

August 7, 2024

androidx.benchmark:benchmark-*:1.3.0-rc01 is released. Version 1.3.0-rc01 contains these commits.

Bug Fixes

  • Fix androidx.benchmark.cpuEventCounter producing corrupt values for non-Instruction events (I7386a, b/286306579)
  • Fix resumeTiming/runWithTimingDisabled to respect metric priority order, and significantly reduce impact of lower priority metric pause/resume on higher priority metric results. For example, if using cpu perf counters via cpuEventCounter.enable instrumentation argument, timeNs is no longer significantly reduced when pause/resume occur. (I39c2e, b/286306579, b/307445225)
  • Reduced chance of stack sampling causing measureRepeatedOnMainThread from hitting main thread hard timeout by moving stack sampling conversion off main thread. (I487a8, b/342237318)
  • Removed manual outlining of access to new platform APIs since this happens automatically via API modeling when using R8 with AGP 7.3 or later (e.g. R8 version 3.3) and for all builds when using AGP 8.1 or later (e.g. D8 version 8.1). Clients who are not using AGP are advised to update to D8 version 8.1 or later. See this article for more details. (I9496c, b/345472586)
  • Added agp version check to send package name as instr arg. Previous to AGP 8.4.0 the target app package name cannot be send to the instrumentation app via instrumentation arguments. (0c72a3f)

Biometric: v1.4.0-alpha02

August 7, 2024

androidx.biometric:biometric:1.4.0-alpha02 and androidx.biometric:biometric-ktx:1.4.0-alpha02 are released. Version 1.4.0-alpha02 contains these commits.

New Features

  • PromptContentView allows developers to show the custom content view as an additional option of plain description text view
  • App logo on Biometric Prompt is shown - automatically added using application icon.

API Changes

  • Add APIs to support custom content view
    • BiometricPrompt.PromptInfo.Builder#setContentView
    • Biometric...
Read more

2024-07-25

25 Jul 15:36

Choose a tag to compare

Media3: v1.4.0

July 25, 2024

androidx.media3:media3-*:1.4.0 is released. Version 1.4.0 contains these commits.

  • Common Library:
    • Forward presumed no-op seek calls to the protected BasePlayer.seekTo() and SimpleBasePlayer.handleSeek() methods instead of ignoring them. If you are implementing these methods in a custom player, you may need to handle these additional calls with mediaItemIndex == C.INDEX_UNSET.
    • Remove compile dependency on enhanced Java 8 desugaring (#1312).
    • Ensure the duration passed to MediaItem.Builder.setImageDurationMs() is ignored for a non-image MediaItem (as documented).
    • Add Format.customData to store app-provided custom information about Format instances.
  • ExoPlayer:
    • Add BasePreloadManager which coordinates the preloading for multiple sources based on the priorities defined by their rankingData. Customization is possible by extending this class. Add DefaultPreloadManager which uses PreloadMediaSource to preload media samples of the sources into memory, and uses an integer rankingData that indicates the index of an item on the UI.
    • Add PlayerId to most methods of LoadControl to enable LoadControl implementations to support multiple players.
    • Remove Buffer.isDecodeOnly() and C.BUFFER_FLAG_DECODE_ONLY. There is no need to set this flag as renderers and decoders will decide to skip buffers based on timestamp. Custom Renderer implementations should check if the buffer time is at least BaseRenderer.getLastResetPositionUs() to decide whether a sample should be shown. Custom SimpleDecoder implementations can check isAtLeastOutputStartTimeUs() if needed or mark other buffers with DecoderOutputBuffer.shouldBeSkipped to skip them.
    • Allow a null value to be returned by TargetPreloadStatusControl.getTargetPreloadStatus(T) to indicate not to preload a MediaSource with the given rankingData.
    • Add remove(MediaSource) to BasePreloadManager.
    • Add reset() to BasePreloadManager to release all the holding sources while keep the preload manager instance.
    • Add ExoPlayer.setPriority() (and Builder.setPriority()) to define the priority value used in PriorityTaskManager and for MediaCodec importance from API 35.
    • Fix issue with updating the last rebuffer time which resulted in incorrect bs (buffer starvation) key in CMCD (#1124).
    • Add PreloadMediaSource.PreloadControl.onLoadedToTheEndOfSource(PreloadMediaSource) to indicate that the source has loaded to the end. This allows the DefaultPreloadManager and the custom PreloadMediaSource.PreloadControl implementations to preload the next source or take other actions.
    • Fix bug where silence skipping at the end of items can trigger a playback exception.
    • Add clear to PreloadMediaSource to discard the preloading period.
    • Add new error code PlaybackException.ERROR_CODE_DECODING_RESOURCES_RECLAIMED that is used when codec resources are reclaimed for higher priority tasks.
    • Let AdsMediaSource load preroll ads before initial content media preparation completes (#1358).
    • Fix bug where playback moved to STATE_ENDED when re-preparing a multi-period DASH live stream after the original period was already removed from the manifest.
    • Rename onTimelineRefreshed() to onSourcePrepared() and onPrepared() to onTracksSelected() in PreloadMediaSource.PreloadControl. Also rename the IntDefs in DefaultPreloadManager.Stage accordingly.
    • Add experimental support for dynamic scheduling to better align work with CPU wake-cycles and delay waking up to when renderers can progress. You can enable this using experimentalSetDynamicSchedulingEnabled() when setting up your ExoPlayer instance.
    • Add Renderer.getDurationToProgressUs(). A Renderer can implement this method to return to ExoPlayer the duration that playback must advance for the renderer to progress. If ExoPlayer is set with experimentalSetDynamicSchedulingEnabled() then ExoPlayer will call this method when calculating the time to schedule its work task.
    • Add MediaCodecAdapter#OnBufferAvailableListener to alert when input and output buffers are available for use by MediaCodecRenderer. MediaCodecRenderer will signal ExoPlayer when receiving these callbacks and if ExoPlayer is set with experimentalSetDynamicSchedulingEnabled(), then ExoPlayer will schedule its work loop as renderers can make progress.
    • Use data class for LoadControl methods instead of individual parameters.
    • Add ExoPlayer.isReleased() to check whether Exoplayer.release() has been called.
    • Add ExoPlayer.Builder.setMaxSeekToPreviousPositionMs() to configure the maximum position for which seekToPrevious() seeks to the previous item (#1425).
    • Fix some audio focus inconsistencies, e.g. not reporting full or transient focus loss while the player is paused (#1436).
    • Fix potential IndexOutOfBoundsException caused by extractors reporting additional tracks after the initial preparation step (#1476).
    • Effects in ExoPlayer.setVideoEffect() will receive the timestamps with the renderer offset removed (#1098).
    • Fix potential IllegalArgumentException when handling player error that happened while reading ahead into another playlist item (#1483).
  • Transformer:
    • Add audioConversionProcess and videoConversionProcess to ExportResult indicating how the respective track in the output file was made.
    • Relax trim optimization H.264 level checks.
    • Add support for changing between SDR and HDR input media in a sequence.
    • Add support for composition-level audio effects.
    • Add support for transcoding Ultra HDR images into HDR videos.
    • Fix issue where the DefaultAudioMixer does not output the correct amount of bytes after being reset and reused.
    • Work around a decoder bug where the number of audio channels was capped at stereo when handling PCM input.
    • When selecting tracks in ExoPlayerAssetLoader, ignore audio channel count constraints as they only apply for playback.
    • Replace androidx.media3.transformer.Muxer interface with androidx.media3.muxer.Muxer and remove androidx.media3.transformer.Muxer.
Read more

2024-07-24

24 Jul 18:42

Choose a tag to compare

Activity: v1.9.1

July 24, 2024

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

Bug Fixes

  • Fixed an issue with PredictiveBackHandler where after doing system back, attempting to do onBackPressed from the OnBackPressedDispatcher would fail. (I5f1f8)

Annotation: v1.8.1

July 24, 2024

androidx.annotation:annotation-*:1.8.1 is released. Version 1.8.1 contains these commits.

Bug Fixes

  • Includes additional Kotlin Multiplatform targets: watchos, tvos.

Collection: v1.4.2

July 24, 2024

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

New Features

  • Includes additional Kotlin Multiplatform targets: watchos, tvos, linuxArm64. (b/352543988)

Compose Animation: v1.7.0-beta06

July 24, 2024

androidx.compose.animation:animation-*:1.7.0-beta06 is released. Version 1.7.0-beta06 contains these commits.

Bug Fixes

  • Fixed SeekableTransition leaking transition states by properly cleaning up observations from SnapshotStateObserver when the transition is disposed. (b9c7182)
  • Fixed edge cases where child Transitions are not properly marked complete when the parent completes. (dc42216)

Compose Foundation: v1.7.0-beta06

July 24, 2024

androidx.compose.foundation:foundation-*:1.7.0-beta06 is released. Version 1.7.0-beta06 contains these commits.

Compose Material: v1.7.0-beta06

July 24, 2024

androidx.compose.material:material-*:1.7.0-beta06 is released. Version 1.7.0-beta06 contains these commits.

Compose Material3: v1.3.0-beta05

July 24, 2024

androidx.compose.material3:material3-*:1.3.0-beta05 is released. Version 1.3.0-beta05 contains these commits.

  • Fixed issue where BottomSheet content is missing or cut off on Android N and O (a10a2d)
  • Increased slider’s semantics bounds in order for TalkBack to properly show the focus indicators around the thumbs. (0b5a1d)

Compose Runtime: v1.7.0-beta06

July 24, 2024

androidx.compose.runtime:runtime-*:1.7.0-beta06 is released. Version 1.7.0-beta06 contains these commits.

Compose UI: v1.7.0-beta06

July 24, 2024

androidx.compose.ui:ui-*:1.7.0-beta06 is released. Version 1.7.0-beta06 contains these commits.

credentials: v1.5.0-alpha03

July 24, 2024

androidx.credentials:credentials:1.5.0-alpha03 and androidx.credentials:credentials-play-services-auth:1.5.0-alpha03 are released. This version is developed in an internal branch.

New Features

  • Introduces a new feature, the Restore Credentials. The restore credential is used to restore the user's credential from the previous device to a new Android device. By creating a RestoreCredential for the user, the credential will be automatically transferred over to the user's new device if the user selects the app to be transferred from the old device during the setup stage.

API Changes

  • New classes are added for requesting Restore Credentials.
  • A new credential type, RestoreCredential, that can restore credentials in a new device.
  • CreateRestoreCredentialRequest for creating a new RestoreCredential.
  • GetRestoreCredentialOption for fetching RestoreCredential.
  • ClearCredentialStateRequest can be modified to clear the RestoreCredential.

Bug Fixes

  • Added a new RestoreCredential API for app-restore purposes (If2d40)

Fragment: v1.8.2

July 24, 2024

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

Bug Fixes

  • AndroidFragment now properly handles cases where the parent fragment is put on the Fragment back stack, avoiding 'No view found for id' issues when popping back to that fragment. (I94608)
  • Fragments added via the FragmentTransaction.add method that takes a ViewGroup now wait for onContainerAvailable before progressing to onStart(). This affects users of that API, such as AndroidFragment, which now waits for the AndroidFragment to re-enter composition before moving it through onStart(). (I94608)

Games Frame Pacing: v2.1.2

July 24, 2024

androidx.games:games-frame-pacing:2.1.2 is released. Version 2.1.2 contains these commits.

Bug Fixes

  • Swappy now uses AChoreographer_postVsyncCallback from API 33 to calculate the presentation time more accurately. This fixes a bug on 120hz devices where frames are dropped.

Games Performance Tuner 1.4.3: v2.0.0-rc01

July 24, 2024

androidx.games:games-performance-tuner:2.0.0-rc01 is released. Version 2.0.0-rc01 contains these commits.

Graphics Shap...

Read more

2024-07-11

11 Jul 18:40

Choose a tag to compare

Benchmark: v1.3.0-beta02

July 10, 2024

androidx.benchmark:benchmark-*:1.3.0-beta02 is released. Version 1.3.0-beta02 contains these commits.

Bug Fixes

  • Gracefully handle EXITCODE 2 when starting Perfetto to log a warning, but proceed.

Collection: v1.4.1

July 10, 2024

androidx.collection:collection-*:1.4.1 is released. Version 1.4.1 contains these commits.

Bug Fixes

Compose Animation: v1.7.0-beta05

July 10, 2024

androidx.compose.animation:animation-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Bug Fixes

  • The Transition property totalDurationNanos now can be properly read within a snapshotFlow.

Compose Foundation: v1.7.0-beta05

July 10, 2024

androidx.compose.foundation:foundation-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Bug Fixes

  • Fix for treatment of Nan values in SnapFlingBehavior and Pager.

Compose Material: v1.7.0-beta05

July 10, 2024

androidx.compose.material:material-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Compose Runtime: v1.7.0-beta05

July 10, 2024

androidx.compose.runtime:runtime-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Compose UI: v1.7.0-beta05

July 10, 2024

androidx.compose.ui:ui-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Bug Fixes

  • Fixed a bug where changing the software keyboard would cause TextField to not accept input from the new keyboard until the focus is lost and regained.
  • Fixed an issue where attempts to persist layer contents would cause unintended side effects when rendering with SurfaceView content.

credentials: v1.3.0-rc01

July 10, 2024

androidx.credentials:credentials:1.3.0-rc01 and androidx.credentials:credentials-play-services-auth:1.3.0-rc01 are released. Version 1.3.0-rc01 contains these commits.

New Features

  • A version bump release along with small implementation updates.

Emoji2: v1.5.0-beta01

July 10, 2024

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

New Features

  • Support emoji 15.1 and bidirectional emoji selection UI.
  • Support multi-skintone selection redesign.

Bug Fixes

  • EmojiPickerView’s tab selection and indicator updates one click behind. (146b02, b/288261054)
  • EmojiPickerView’s tab selection and indicator is broken. (5e1f14, b/273883688)

Games-Activity: v3.0.4

July 10, 2024

androidx.games:games-activity:3.0.4 is released. Version 3.0.4 contains these commits.

Bug Fixes

  • Fixed handling of null pointers.
  • Fixed missing state updates for some states in onConfiguration() callback.

Games Frame Pacing: v2.1.1

July 10, 2024

androidx.games:games-frame-pacing:2.1.1 is released. Version 2.1.1 contains these commits.

Bug Fixes

  • Properly unregister display listener from swappy to avoid a hang.
  • Fix a crash in ChoreographerFilter::onSettingsChanged using destroyed mutex.

Media3: v1.4.0-rc01

July 10, 2024

androidx.media3:media3-*:1.4.0-rc01 is released. Version 1.4.0-rc01 contains these commits.

  • Common Library:
    • Add Format.customData to store app-provided custom information about Format instances.
  • ExoPlayer:
    • Fix some audio focus inconsistencies, e.g. not reporting full or transient focus loss while the player is paused (#1436).
    • Fix potential IndexOutOfBoundsException caused by extractors reporting additional tracks after the initial preparation step (#1476).
    • Effects in ExoPlayer.setVideoEffect() will receive the timestamps with the renderer offset removed (#1098).
    • Fix potential IllegalArgumentException when handling player error that happened while reading ahead into another playlist item (#1483).
  • Text:
    • Fix an IllegalArgumentException from LegacySubtitleUtil when a WebVTT subtitle sample contains no cues, e.g. as part of a DASH stream (#1516).
  • Session:
    • Allow the session activity to be set per controller to override the global session activity. The session activity can be defined for a controller at connection time by creating a ConnectionResult with AcceptedResultBuilder.setSessionActivivty(PendingIntent). Once connected, the session activity can be updated with MediaSession.setSessionActivity(ControllerInfo, PendingIntent).
    • Improve error replication of calls to MediaLibrarySession.Callback. Error replication can now be configured by using MediaLibrarySession.Builder.setLibraryErrorReplicationMode() for choosing the error type or opt-ing out of error replication which is on by default.
  • UI:
    • Work around a platform bug causing stretched/cropped video when using SurfaceView inside a Compose AndroidView on API 34 (#1237).
Read more

2024-07-10

10 Jul 18:41

Choose a tag to compare

Benchmark: v1.3.0-beta02

July 10, 2024

androidx.benchmark:benchmark-*:1.3.0-beta02 is released. Version 1.3.0-beta02 contains these commits.

Bug Fixes

  • Gracefully handle EXITCODE 2 when starting Perfetto to log a warning, but proceed.

Collection: v1.4.1

July 10, 2024

androidx.collection:collection-*:1.4.1 is released. Version 1.4.1 contains these commits.

Bug Fixes

Compose Animation: v1.7.0-beta05

July 10, 2024

androidx.compose.animation:animation-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Bug Fixes

  • The Transition property totalDurationNanos now can be properly read within a snapshotFlow.

Compose Foundation: v1.7.0-beta05

July 10, 2024

androidx.compose.foundation:foundation-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Bug Fixes

  • Fix for treatment of Nan values in SnapFlingBehavior and Pager.

Compose Material: v1.7.0-beta05

July 10, 2024

androidx.compose.material:material-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Compose Runtime: v1.7.0-beta05

July 10, 2024

androidx.compose.runtime:runtime-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Compose UI: v1.7.0-beta05

July 10, 2024

androidx.compose.ui:ui-*:1.7.0-beta05 is released. Version 1.7.0-beta05 contains these commits.

Bug Fixes

  • Fixed a bug where changing the software keyboard would cause TextField to not accept input from the new keyboard until the focus is lost and regained.
  • Fixed an issue where attempts to persist layer contents would cause unintended side effects when rendering with SurfaceView content.

credentials: v1.3.0-rc01

July 10, 2024

androidx.credentials:credentials:1.3.0-rc01 and androidx.credentials:credentials-play-services-auth:1.3.0-rc01 are released. Version 1.3.0-rc01 contains these commits.

New Features

  • A version bump release along with small implementation updates.

Emoji2: v1.5.0-beta01

July 10, 2024

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

New Features

  • Support emoji 15.1 and bidirectional emoji selection UI.
  • Support multi-skintone selection redesign.

Bug Fixes

  • EmojiPickerView’s tab selection and indicator updates one click behind. (146b02, b/288261054)
  • EmojiPickerView’s tab selection and indicator is broken. (5e1f14, b/273883688)

Games-Activity: v3.0.4

July 10, 2024

androidx.games:games-activity:3.0.4 is released. Version 3.0.4 contains these commits.

Bug Fixes

  • Fixed handling of null pointers.
  • Fixed missing state updates for some states in onConfiguration() callback.

Games Frame Pacing: v2.1.1

July 10, 2024

androidx.games:games-frame-pacing:2.1.1 is released. Version 2.1.1 contains these commits.

Bug Fixes

  • Properly unregister display listener from swappy to avoid a hang.
  • Fix a crash in ChoreographerFilter::onSettingsChanged using destroyed mutex.

Navigation: v2.8.0-beta05

July 10, 2024

androidx.navigation:navigation-*:2.8.0-beta05 is released. Version 2.8.0-beta05 contains these commits.

Bug Fixes

  • Fix singleTop navigation crash when nested NavGraphs share the same startDestination route. (I17b94, b/294408596)

privacysandbox ads: v1.1.0-beta09

July 10, 2024

androidx.privacysandbox.ads:ads-adservices:1.1.0-beta09 and androidx.privacysandbox.ads:ads-adservices-java:1.1.0-beta09 are released. Version 1.1.0-beta09 contains these commits.

API Changes

  • Add missing Java constructor overloads for GetAdSelectionDataRequest Experimental API. (Ifbf88).

Room: v2.7.0-alpha05

July 10, 2024

androidx.room:room-*:2.7.0-alpha05 is released. Version 2.7.0-alpha05 contains these commits.

API Changes

  • Renamed SQLiteKt to SQLite and BundledSQLiteKt to BundledSQLite. (I8b501)

Bug Fixes

  • Fixed a bug where a RoomDatabase would deadlock or error out with a connection timeout when using the AndroidSQLiteDriver.

Security-State: v1.0.0-alpha03

July 10, 2024

androidx.security:security-state:1.0.0-alpha03 is released. Version 1.0.0-alpha03 contains

Read more

2024-06-27@09PM

28 Jun 01:43

Choose a tag to compare

Lifecycle: v2.8.3

June 27, 2024

androidx.lifecycle:lifecycle-*:2.8.3 is released. Version 2.8.3 contains these commits.

Bug Fixes

  • Fixed an issue with Lifecycle 2.8’s backward compatibility with Compose 1.6.0 and lower when using code shrinking. (aosp/3133056, b/346808608)