Flutter SDK release notes

Every version of the TrueEngage Flutter SDK, newest first, with the native SDK versions each one bundles.

Updated 1 Nov 2026 8 min read

Every version of the Flutter SDK, newest first. The plugin bundles the Android and iOS SDKs, so its version matches theirs. For setup, see Flutter SDK.

1.0.0 — 1 November 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^1.0.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 1.0.0 · iOS 1.0.0

What's new

  • First stable release. No API breaks: everything that worked in the previous release works unchanged. Includes the SDK Logger.

The iOS part of this release has not yet been compiled or tested on a Mac; verify before release.

0.10.0 — 1 November 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.10.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.10.0 · iOS 0.9.0

What's new

  • Remote SDK logger. Pair a device from the console (Developers > SDK Logger) with a short code or QR link and see its scrubbed SDK log lines live. New TrueEngage.startLoggerSession(codeOrUrl), endLoggerSession() and onLoggerSession; TEConfig(remoteLogger: false) refuses pairing in a release build. On iOS the plugin forwards the pairing link for you; on Android it is picked up from the launch intent.

The iOS part of this release has not yet been compiled or tested on a Mac; verify before release.

0.9.0 — 30 October 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.9.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.9.0 · iOS 0.8.1

What's new

  • Styled push text on Android. A push can show bold, italic, underline, line breaks and coloured text in its title and message. No Dart API change. The iOS SDK stays at 0.8.1, so iOS and Web show plain text. → Push notifications
  • Bottom sheets and full-width images. In-app messages support the bottom_sheet layout, full-width images and tappable images. → Create an in-app message

The iOS part of the in-app change has not yet been compiled or tested on a Mac; verify before release.

0.8.1 — 24 October 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.8.1 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.8.1 · iOS 0.8.1

What's new

  • Ad identifiers cleared. The native SDKs now tell TrueEngage to delete a stored advertising id when ad tracking is limited (Android), App Tracking Transparency stops being authorised or the IDFA changes (iOS), the id is reset, you pass null to setAdvertisingIdentifier or setFirebaseAppInstanceId, or you call optOut. No Dart API change. → When ad identifiers are cleared

The iOS part has not yet been compiled or tested on a Mac; verify before release.

0.8.0 — 22 October 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.8.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.8.0 · iOS 0.8.0

What's new

  • Ad click capture. When a link that opens the app, or the install referrer, carries utm_*, gclid, gbraid, wbraid, gad_source, gad_campaignid, fbclid or fbp, the SDK records one touch. A link with none of them records nothing. Records touches from deep links and the Android install referrer. Stops while tracking is opted out. → See where each user came from
  • Firebase id for GA4. TrueEngage.setFirebaseAppInstanceId(id) adds your Firebase app instance id. → Send events to Google Analytics 4
  • Advertising id. Android reads it only when your manifest declares AD_ID and ad tracking is not limited. iOS sends the IDFA only after App Tracking Transparency is authorized, and never shows the prompt. → See where each user came from
  • Web install links. On Android, a Play Store link built by the Web SDK storeLink keeps its campaign values in the install referrer. On iOS, opting out of tracking clears the stored IDFA and Firebase id.
  • Play referrers. On Android, an install referrer that contains te_anon plus ad parameters now emits $acquisition. It was previously dropped.
  • Release order. Install touches from smart links are matched by TrueEngage, so ship this version after the matching server release.

0.7.0 — 21 October 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.7.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.7.0 · iOS 0.7.0

What's new

  • In-app messages (Android and iOS). Built-in layouts display automatically. Self-handled campaigns arrive on TrueEngage.onInAppMessage as InAppMessage, and TrueEngage.refreshInApp() fetches now.
  • Cards feed. TrueEngage.cards (fetch, list, markRead, markClicked, dismiss, onUnreadChanged, unreadCount) and TECard.
  • Verified identity. identify(id, attrs, token), setIdentityToken and setIdentityTokenProvider.
  • Persistent session caps. In-app session caps now persist across process restarts.

0.6.0 — 19 October 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.6.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.6.0 · iOS 0.6.0

What's new

  • Push action buttons. Buttons show on Android (notification actions) and iOS (a per-push category from the notification service extension). TEPushPayload.buttons and actionId are new, and trackPushClicked(data, actionId:) records taps for notifications your app renders itself. → Push notifications
  • Push sound. A template sound plays a bundled file: Android res/raw, iOS app bundle.

Fixes

  • Push payloads. A JSON null in the push data is treated as missing on Android. Build of 21 October.

0.5.0 — 18 October 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.5.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.5.0 · iOS 0.5.0

What's new

  • Referral links. createLink(deepLinkValue:, params:, channel:, campaign:) creates a short smart link. It fails only with TrueEngageLinkException: disabled, rateLimited, invalid or network. → Links API and webhooks
  • Referrer on deep links. TEDeepLink.referrer is set when the opened link was created in an app. → Links API and webhooks

0.4.0 — 18 October 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.4.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.4.0 · iOS 0.4.0

What's new

0.3.0 — 13 October 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.3.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.3.0 · iOS 0.3.0

What's new

  • Opt-in device location. TrueEngage.requestLocationPermission() returns granted, denied, restricted or not_requested. TrueEngage.updateLocation() reads and syncs a location now and tells you whether it did. → Device location
  • Location settings. TEConfig.locationPrompt ('manual' by default, or 'auto') and TEConfig.locationRefreshHours (default 4). → Device location
  • Location permission events. Location Permission Granted and Location Permission Denied are recorded when the user decides. → Device location

Improvements

  • Your app declares the permission. Add ACCESS_FINE_LOCATION to the Android manifest and NSLocationWhenInUseUsageDescription to Info.plist. Without them the status is restricted and no location is read. Google Play also requires your own in-app disclosure before the prompt. → Device location
  • Push images and receipts. The Android and iOS push-image handling from the native SDKs is included, with limits on download time and size. Build of 14 October. → Push notifications

Fixes

  • Android permission result reaches the SDK. The location permission answer is forwarded to the core, and the Android bridge returns restricted when no Activity is attached.
  • Aligned versions. The Android and CocoaPods artifacts still reported 0.1.0. All three now report 0.3.0.

0.2.0 — 11 October 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.2.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.2.0 · iOS 0.2.0

What's new

  • Country from the device. Each batch includes deviceCountry, read without any permission (network, SIM or locale on Android; the Region setting on iOS). The server uses it behind the request address. → Device location
  • setRegion(). A typed setter for the user's state or province. → Events and identity

0.1.0 — 19 September 2026

Package Requirements Bundled native SDKs
trueengage_flutter: ^0.1.0 Flutter 3.10+ · Dart 3.5+ · Android minSdk 24 · iOS 14 Android 0.1.0 · iOS 0.1.0

What's new

  • Everything in the native SDKs. Event tracking with a durable queue, identity and attributes, sessions, remote config, consent, and push on Android (FCM) and iOS (APNs), through one Dart API. → Flutter SDK
  • Push streams. Streams such as onPushClicked and onPushReceived deliver push events to Dart. → Push notifications

Improvements

Added in October 2026, still reported as 0.1.0:

  • Push with firebase_messaging, 9 October. TrueEngage.handlePushPayload(data, display: false) records a push without showing it, and TrueEngage.trackPushClicked(data) records taps from onMessageOpenedApp, getInitialMessage() and flutter_local_notifications. Receipts and clicks are recorded once per message. → Push notifications
  • Push images, 8 October. Fixes for iOS pushes that carry an image. → Push notifications