Versionedparcelable

  
Provides a stable and compact binary serialization format that can be passed across processes or persisted safely.
Latest Update Stable Release Release Candidate Beta Release Alpha Release
January 29, 2025 1.2.1 - - -

Feedback

Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.

Create a new issue

See the Issue Tracker documentation for more information.

Version 1.2

Version 1.2.1

January 29, 2025

androidx.versionedparcelable:versionedparcelable:1.2.1 is released. Version 1.2.1 contains these commits.

Bug Fixes

  • Updated VersionedParcelable to avoid class init during the initial stages of unparceling, which prevents externally-controlled inputs from executing unexpected code in static initialization blocks for non-VersionedParcelable classes already present in the application classpath. (Icceed)
  • This library now uses JSpecify nullness annotations, which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (Ibc328, b/326456246)
  • 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. (Ia60e0, b/345472586)

Version 1.2.0

January 10, 2024

androidx.versionedparcelable:versionedparcelable:1.2.0 is released. Version 1.2.0 contains these commits.

Important changes since 1.1.0

  • Added support for depending on VersionedParcelable from a project using Stable AIDL.

Version 1.2.0-rc01

December 13, 2023

androidx.versionedparcelable:versionedparcelable:1.2.0-rc01 is released. There are no changes since the previous beta release.

Version 1.2.0-beta01

November 29, 2023

androidx.versionedparcelable:versionedparcelable:1.2.0-beta01 is released with no changes since 1.2.0-alpha01. Version 1.2.0-beta01 contains these commits.

Version 1.2.0-alpha01

November 15, 2023

androidx.versionedparcelable:versionedparcelable:1.2.0-alpha01 is released. Version 1.2.0-alpha01 contains these commits.

New Features

API Changes

  • Added nullability annotations (Ic16ed)

Version 1.1.1

Version 1.1.1

April 15, 2020

androidx.versionedparcelable:versionedparcelable:1.1.1 is released. Version 1.1.1 contains these commits.

Bug Fixes

  • Updated ProGuard rules to keep all classes that implement VersionedParcelable, including non-public classes (I480bf8)

Version 1.1.0

Version 1.1.0

August 7, 2019

androidx.versionedparcelable:versionedparcelable:1.1.0 is released. The commits included in this version can be found here.

Below is a summary of changes from 1.0.0 to 1.1.0:

New features

  • New convenience methods ParcelUtils.getVersionedParcelableList() and ParcelUtils.putVersionedParcelableList()

API changes

  • ParcelUtils.getVersionedParcelable() now returns null if the key is not found in the bundle
  • ParcelUtils.putVersionedParcelable() now accepts null VersionedParcelable objects

Version 1.1.0-rc01

June 5, 2019

androidx.versionedparcelable:versionedparcelable:1.1.0-rc01 is released with no changes from 1.1.0-beta01. The commits included in this version can be found here.

Version 1.1.0-beta01

May 7, 2019

androidx.versionedparcelable:versionedparcelable:1.1.0-alpha01 is released. The commits included in this version can be found here.

API changes

  • Parcelutils.getVersionedParcelable and Parcelutils.putVersionedParcelable` now support null (aosp/940072)
  • RemoteActionCompat is now a VersionedParcelable` (aosp/928534)

Version 1.1.0-alpha02

March 13, 2019

androidx.versionedparcelable:versionedparcelable:1.1.0-alpha02 is released. The full list of commits included in this version can be found here.

Bug fixes

  • Updated to the latest annotation version for new annotations.

Version 1.1.0-alpha01

November 5, 2018

New features

  • Added support for CharSequence in all classes except VersionedParcelStream.
  • Added support for SuperClass, Set, and Map.

Bug fixes

  • Fixed a bug with checking IDs in inherited classes.