SDK releases
Engage releases the Android, iOS, and Flutter SDKs independently. Equal version numbers do not imply a lockstep release.
This documentation tracks the current develop implementation. The following versions are the latest published Git tags in the local source set; APIs listed under Next release require a newer tag before an external application can consume them.
Current tagged releases
| SDK | Release | Distribution | Minimum platform |
|---|---|---|---|
| Android | 2.1.1 | JitPack, repository mathias8dev/engage-android | API 23; Java 17; compile SDK 36 |
| iOS | 2.1.0 | Swift Package Manager, repository mathias8dev/engage-ios | iOS 15; Swift 5.9 |
| Flutter | 2.1.1 | pub.dev package engage_flutter | Flutter 3.41; Android API 24; iOS 15 |
Release tags use semantic versions without a v prefix.
Flutter native compatibility
Flutter is a bridge over native Engage SDKs. The package pins native versions that were tested together:
| Flutter package | Android SDK | iOS SDK |
|---|---|---|
2.1.1 | 2.1.0 | 2.1.0 |
Do not override those native versions in a consuming application unless you are validating a coordinated Engage release. Upgrade the Flutter package to receive a new supported native composition.
Next-release implementation
The current develop branches contain these integrated capabilities after the tags above:
| Capability | Android | iOS | Flutter |
|---|---|---|---|
Embedded Message Center list/detail with immutable SUMMARY and DETAIL surfaces | develop | develop | develop bridge |
Explicit legacyEndpoints storage migration | develop | develop | develop bridge |
| Runtime in-app personalization and message detail resolution | develop | develop | Native bridge integration |
| Themed Preference Center presentation and host-composed Flutter content | develop Activity | develop UIKit | develop widget and bridge |
Until the next releases are tagged, use the ready-made/headless Message Center APIs and the unchanged endpoint configuration from the published versions. The Preference Center presentation examples on this site also require the next release. Do not copy a develop-only example into a dependency pinned to the current tagged release.
Versioning policy
- Patch releases fix behavior without intentionally changing the public integration contract.
- Minor releases may add backward-compatible capabilities and modules.
- Major releases may require integration changes.
- Android modules in one release use the same version.
- A Flutter version is independent from the Android and iOS version it wraps.
Read each platform guide for the exact dependency declaration and requirements.