Skip to content

Releases: optimizely/android-sdk

Release 5.3.0

Choose a tag to compare

@muzahidul-opti muzahidul-opti released this 08 Jul 14:03
92551d2

5.3.0

July 8, 2026

New Features

Local Holdouts: Added support for Local Holdouts, enabling holdout experiments to be scoped to specific feature flags rather than applied globally. Local Holdouts let you measure the true incremental impact of individual features by holding out a subset of users from specific rollouts while still serving them other experiences.
See Holdouts docs for more information.

Fixes

  • Use attribute id instead of key for CMAB prediction requests
  • Normalize decision event campaign_id, variation_id, and entity_id

Release 5.2.1

Choose a tag to compare

@jaeopt jaeopt released this 01 Jun 16:57
f82c5f9

5.2.1

June 1, 2026

Fixes

  • Upgrade dependency to Java SDK 4.4.2
    • Block ODP identify event for single identifier

Release 5.2.0

Choose a tag to compare

@jaeopt jaeopt released this 11 May 15:56
bb99641

5.2.0

May 11, 2026

New Features

Feature Rollout: Added support for Feature Rollouts, a new experiment type
combining Targeted Delivery simplicity with A/B test measurement capabilities.
Feature Rollouts enable progressive rollouts with full impact analytics, metric tracking,
and confidence intervals.
See Feature Rollout docs for more information.

Fixes and Improvements

  • Update cmab error handling (#522)

Release 5.1.1

Choose a tag to compare

@FarhanAnjum-opti FarhanAnjum-opti released this 20 Jan 15:43
f751e0c

5.1.1

January 20th, 2025

Enhancements and fixes

  • Upgrade Java Core SDK to 4.3.1 from 4.3.0.
  • Excludes CMAB from UserProfileService.
  • Fixes missing bucketing reasons in CMAB decision path.

Release 5.1.0

Choose a tag to compare

@jaeopt jaeopt released this 19 Dec 20:55
26aa852

5.1.0

December 19th, 2025

New Features

This release introduces new primary features: Contextual Multi-Armed Bandit (CMAB) and Holdouts.

Contextual Multi-Armed Bandit (CMAB)

  • Add support for CMAB experiments with new configuration options and cache control (#514).
  • Add new decideAsync methods to support asynchronous CMAB decision (#514).
  • For configuration details, see the CMAB configuration documentation.

Holdouts

  • Add Holdouts Feature Experimentation feature (#516).

Other Changes

  • Upgrade targetSDK to 35

Release 5.0.1

Choose a tag to compare

@muzahidul-opti muzahidul-opti released this 30 May 17:26
841a5d2

5.0.1

May 30th, 2025

Functionality Enhancements

  • Add experimentId and variationId to decision notification (#509).

Release 5.0.0

Choose a tag to compare

@muzahidul-opti muzahidul-opti released this 25 Nov 14:52
900ffc7

5.0.0

November 25th, 2024

Breaking Changes

  • VUID configuration is now independent of ODP (#497)
  • When VUID is disabled:
    • vuid is not generated or saved.
    • client-initialized event will not auto fired on SDK init.
    • vuid is not included in the odp events as a default attribute.
    • createUserContext() will be rejected if userId is not provided.

Release 4.1.0

Choose a tag to compare

@muzahidul-opti muzahidul-opti released this 13 Nov 13:53
b5e8a64

4.1.0

November 13th, 2024

New Features

  • Batch UPS lookup and save calls in decideAll and decideForKeys methods (#498).

Release 4.0.4

Choose a tag to compare

@muzahidul-opti muzahidul-opti released this 18 Sep 17:00
7d7357c

4.0.4

September 18th, 2024

Bug Fixes

  • R8 configuration breaks Gson use at runtime (#493).

Release 4.0.3

Choose a tag to compare

@muzahidul-opti muzahidul-opti released this 23 Aug 17:50
70d50b9

4.0.3

August 23th, 2024

  • Rollback to 4.0.0 (#488).