PackageTrack
Sign in Get early access

batch_flutter

Batch SDK Flutter Plugin allows you to build meaningful communication experiences in your app through highly personalized push notifications and In-App messages.

3.1.0 6.3K downloads/mo #3517 most downloaded on pub.dev

What this package is like to depend on

Last release 4 months ago

22 Apr 2026

Release timing varies

gaps range from 3 weeks to 1.4 years

Nearly every release is documented

notes for 12 of 12 stable releases

Nothing withdrawn

no release was ever pulled

5 years old

14 releases · first in 2021

2 releases in the last 12 months

see the full history below

Release timeline

14 releases · Jun 2021 to Apr 2026
2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 14
  1. 3.1.0 22 Apr 2026
    Release notes

    Plugin

    • Updated Batch to 3.3

    Profile

    • Added setTopicPreferences(List<String>? topics) to BatchProfileAttributeEditor class to set or reset the profile topic preferences.
    • Added addToTopicPreferences(List<String> topics) to BatchProfileAttributeEditor class to add topics to the profile topic preferences.
    • Added removeFromTopicPreferences(List<String> topics) to BatchProfileAttributeEditor class to remove topics from the profile topic preferences.
    • Profile string attributes now support up to 300 characters for the Customer Engagement Platform (CEP). The limit for the Mobile Engagement Platform (MEP) remains 64 characters. Attributes set via BatchProfileAttributeEditor.setStringAttribute() longer than 64 characters will only be applied to the CEP.
    • Event string attributes now support up to 300 characters for the Customer Engagement Platform (CEP). The limit for the Mobile Engagement Platform (MEP) remains 200 characters. Attributes set via BatchEventAttributes.putString() longer than 200 characters will only be applied to the CEP.

    Push

    • Added requestNotificationAuthorizationAsync()to request notification authorization and return a promise that resolve with the authorization result.
    Open source →
  2. 3.0.0 23 Sep 2025
    Release notes

    Plugin

    • Updated Batch to 3.1
    • Batch requires iOS 15.0 or higher and Xcode 16.4
    • Batch is now distributed as a dynamic framework
    • Added support for strict concurrency in Swift 6
    • Batch now compiles with SDK 36 (Android 16 'Baklava').

    Push

    • Added setShowNotifications method to control whether android push notifications should be displayed.
    • Added shouldShowNotifications method to check current android notification display settings.

    Messaging

    • Added support for Mobile Landings within the Customer Engagement Platform.
    • Added support for In-App Automations within the Customer Engagement Platform.
    Open source →
  3. 2.1.0 14 Nov 2024
    Release notes

    Plugin

    • Updated Batch to 2.1
    • Batch requires iOS 13.0 or higher.
    • Batch requires to compile with SDK 35 (Android 15).

    iOS

    • Added support for Swift Package Manager. Since, as of writing, Flutter's support of SPM is still under development, this may not work in future versions of Flutter. Batch is still backwards compatible with CocoaPods.

    Profile

    • Added setPhoneNumber API to the BatchProfileAttributeEditor class. This requires to have a user identifier registered or to call the identify method beforehand.
    • Added setSMSMarketingSubscription API to the BatchProfileAttributeEditor class.
    Open source →
  4. 2.0.0 25 Jul 2024
    Release notes

    This is a major release, please see our migration guide for more info on how to update your current Batch implementation.

    Plugin

    • Updated Batch to 2.0. For more information see the ios and android changelog .
    • Batch requires iOS 13.0 or higher.
    • Batch requires a minSdk level of 21 or higher.

    iOS

    • Removed deprecated canUseIDFA property from BatchPluginConfiguration.
    • Removed canUseAdvancedDeviceInformationproperty from BatchPluginConfiguration. You should now use the setAutomaticDataCollection API.
    • Added profileCustomIdMigrationEnabled property to disable the profile custom id migration. This can also be done from the Info.plist file. See our documentation for info.
    • Added profileCustomDataMigrationEnabled property to disable the profile custom data migration. This can also be done from the Info.plist file. See our documentation for info.

    Android

    • Removed deprecated canUseAdvertisingID method from BatchPluginConfiguration.
    • Removed setCanUseAdvancedDeviceInformation and canUseAdvancedDeviceInformation method from BatchPluginConfiguration. You should now use the new setAutomaticDataCollection API.
    • Added setProfileCustomIdMigrationEnabled method to disable the profile custom id migration. This can also be done from the AndroidManifest meta-data. See our documentation for info.
    • Added setProfileCustomDataMigrationEnabled method to disable the profile custom data migration. This can also be done from the AndroidManifest meta-data. See our documentation for info.

    Core

    • Added method isOptedOut to checks whether Batch has been opted out from or not.
    • Added method setAutomaticDataCollection to fine-tune the data you authorize to be tracked by Batch.

    User

    • Removed method trackTransaction with no equivalent.
    • Removed method BatchUser.newEditor and the related class BatchUserDataEditor, you should now use BatchProfile.instance.newEditor() which return an instance of BatchProfileAttributeEditor.
    • Added method clearInstallationData which allows you to remove the installation data without modifying the current profile.

    Event

    This version introduced two new types of attribute that can be attached to an event : Array and Object.

    • Removed trackEvent APIs from the user module. You should now use BatchProfile.instance.trackEvent.
    • BatchEventData has been renamed into BatchEventAttributes.
    • Added support of type Array and Object with the following:
      • Added putObject method to BatchEventAttributes.
      • Added putObjectList method BatchEventAttributes.
      • Added putStringList method BatchEventAttributes.
    • Removed addTag API from BatchEventData You should now use the $tags key in BatchEventAttributes with the putStringList method.
    • Removed parameter label from trackEvent API. You should now use the $label key in BatchEventAttributes with the putString method.

    Profile

    Introduced BatchProfile, a new module that enables interacting with profiles. Its functionality replaces most of BatchUser used to do.

    • Added identify API as replacement of BatchUser.instance.newEditor().setIdentifier.
    • Added newEditor method to get a new instance of a BatchProfileAttributeEditor as replacement of BatchUserDataEditor.
    • Added trackEvent API as replacement of the BatchUser.instance.trackEvent methods.
    • Added trackLocation API as replacement of the BatchUser.instance.trackLocation method.
    Open source →
  5. 1.4.0 23 Jan 2024
    Release notes

    Plugin

    • Dart 2.15+ is now required.
    • Updated Batch to 1.21.0.
    • Batch requires iOS 12.0 or higher.
    • Batch now compiles with and targets SDK 34 (Android 14).

    User

    • Removed automatic collection of the advertising id:
      • Android's Methods setCanUseAdvertisingID and canUseAdvertisingID from BatchPluginConfiguration are now deprecated and do nothing.
      • Android's manifest configuration com.batch.flutter.use_gaid has been removed.
      • iOS's property canUseIDFA from BatchPluginConfiguration is now deprecated and does nothing.
      • iOS's Info.plist property BatchFlutterCanUseIDFA has been removed.
      • You need to collect it from your side and pass it to Batch via the added setAttributionIdentifier(String? id) method. Batch will persist it across starts.
    • Added setEmail(String? email) method to BatchUserDataEditor. This requires to have a user identifier registered or to call the setIdentifier method on the editor instance beforehand.
    • Added setEmailMarketingSubscriptionState(BatchEmailSubscriptionState state) method to BatchUserDataEditor.

    Inbox

    • Added hasLandingMessage property to BatchInboxNotificationContent.
    • Added displayNotificationLandingMessage(BatchInboxNotificationContent notification) method to BatchInboxFetcher.
    Open source →
  6. 1.3.0 15 Sep 2022
    Release notes

    Plugin

    • Updated Batch to 1.19.2. Bumping your Android project's compileSdkVersion to 33 might be required. Xcode 13.3 required if your project uses bitcode.

    Push

    • Added Android implementation of the batch.push.requestNotificationAuthorization() API. This allows you to request for the new notification permission introduced in Android 13. See the documentation for more info.
    Open source →
  7. 1.2.0 05 Apr 2022
    Release notes

    Plugin

    • Updated Batch to 1.19.0. Bumping your Android project's compileSdkVersion to 31 might be required. Xcode 13.3 required if your project uses bitcode.

    Inbox

    • Silent notifications are now filtered on Android rather than throwing an exception when fetched.
    Open source →
  8. 1.1.4 17 Feb 2022
    Release notes

    Plugin

    • Android: Move away from jCenter and use Maven Central.
    Open source →
  9. 1.1.3 15 Feb 2022
    Release notes

    Plugin

    • Updated dependencies so that the project can be built using Flutter 2.10.
      Bumping your Android project's compileSdkVersion to 31 might be required.
    Open source →
  10. 1.1.1 21 Dec 2021
    Release notes

    Plugin

    • Update Batch iOS to 1.18.1
    • Work around a Flutter issue where a wrong nullability annotation resulted in a debug app crashing when started from the home screen. The scenario is still unsupported by Flutter, but the app will not crash anymore.
    Open source →
  11. 1.1.0 29 Nov 2021
    Release notes

    Plugin

    • Update Batch to 1.18

    User

    • Added support for the URL attribute and event data type.
    Open source →
  12. 1.0.0 09 Sep 2021
    Release notes

    Initial stable release 🎉

    Changes since RC:

    Inbox

    • Removed isDeleted on BatchInboxNotificationContent as it doesn't work like it does on the native SDK due to plugin limitations.
    Open source →
  13. 1.0.0-rc.2 29 Jul 2021 pre-release
    Release notes

    Inbox

    • Fix limit and maxPageSize staying at their default values.
    Open source →
  14. 1.0.0-rc.1 25 Jun 2021 pre-release

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive