Netmera Developer Guide
Netmera Docs
  • Netmera Developer Guide
  • Platforms
    • iOS
      • New iOS (Swift)
        • SDK Integration
        • Push Notifications
          • Delegate Methods
          • Widget and In-App Messages
          • Media Push
          • Carousel, Slider and Thumbnail Push
        • Deep Linking
          • Custom Deep Links
        • Sound & Vibration
        • Push Inbox
        • Events
        • Geofence & Location
        • User Attributes & Preferences
        • Advertising ID
        • Changelog
      • Former iOS (Objective-C)
        • SDK Integration
        • Push Notifications
          • Delegate Methods
          • Push Payload Receivers
          • Widget and In-App Messages
          • Customizing In-App Messages
          • Media Push
          • Carousel, Slider and Thumbnail Push
          • Custom Web View Presentation
          • Push Icon
        • Live Activities
        • Deep Linking
          • Custom Deep Links
        • Sound & Vibration
        • Push Inbox
        • Events
        • Geofence & Location
        • User Attributes & Preferences
        • Data Transfer
        • Advertising ID
        • SSL Pinning
        • Changelog
    • Android
      • SDK Integration
        • Huawei Integration
        • Huawei Message Receipt
        • Android Integration FAQs
      • Push Notifications
        • Widget and In-App Messages
        • Push Callbacks
        • Custom Web View Presentation
        • Push Icon
      • Deep Linking
        • Custom Deep Links
      • Sound & Vibration
      • Push Inbox
      • Events
      • Geofence & Location
        • Background Location Permission
      • User & Attributes
      • Data Transfer
      • Advertising ID
      • App Tracking
      • SSL Pinning
      • Changelog
    • Web
      • SDK Setup
        • Self-Hosted SDK Setup
      • Mobile Web Push for iOS
      • Deep Linking
        • Custom Deep Links
      • Events
      • User & Attributes
    • React Native
      • SDK Integration
      • Push Notifications
        • Widget and In-App Messages
        • Push Callbacks
      • Deep Linking
        • Custom Deep Links
      • Sound & Vibration
      • Push Inbox
      • Events
      • Geofence & Location
      • User & Attributes
      • Changelog
    • Flutter
      • SDK Integration
      • Push Notifications
        • Push Notification Permissions
        • Widget and In-App Messages
        • Flutter iOS Media Push
      • Deep Linking
        • Custom Deep Links
      • Sound & Vibration
      • Push Inbox
      • Events
      • Geofence & Location
      • User & Attributes
      • SSL Pinning
      • Changelog
    • Cordova
      • SDK Integration
      • Push Notifications
      • Sound & Vibration
      • Push Inbox
      • Events
      • User & Attributes
    • Unity
      • SDK Integration
      • Sound & Vibration
      • Events
      • User & Attributes
      • Changelog
  • Integrated Modules
    • Optimove
    • Adjust
    • Mixpanel
    • IYS Integration
    • VIA Integration
      • Short URL Consent Requests
      • OTP Consent Requests
        • OTP Confirmation Completion
      • VIA Email Rejection Link Generation
      • ETK Rejection via SMS
  • API Documentation
    • REST API
      • Setup
      • Notifications
      • Events
      • User & Device Management
      • Inbox Feature
      • GDPR
      • Error Responses
  • FAQs
    • Push Notifications FAQs
Powered by GitBook
On this page
  • v2.5.3
  • v2.5.2
  • v2.5.1
  • v2.5.0
  • v2.4.6
  • v2.4.5
  • v2.4.4
  • v2.4.3
  • v2.4.2
  • v2.4.1
  • v2.4.0
  • v2.3.7
  • v2.3.6
  • v2.3.5
  • v2.3.4
  • v2.3.2
  • v2.3.1
  • v2.3.0
  • v2.2.0
  • v2.1.15
  • v2.1.14

Was this helpful?

  1. Platforms
  2. Flutter

Changelog

PreviousSSL PinningNextCordova

Last updated 11 days ago

Was this helpful?

Latest version details may also be found here: .

v2.5.3

April 28, 2025

⭐ IMPROVEMENTS

  • Upgraded Android SDK nmcore to version 4.3.0.

  • Upgraded Android SDK nmfcm to version 4.0.2.

  • Upgraded Android SDK nmhms to version 4.0.1.

🛠 BUGFIX

  • A fix has been developed to address the ensureInitializationComplete crash.

v2.5.2

April 10, 2025

⭐ IMPROVEMENTS

  • DateTime Event Attribute Improvement

Improved handling of DateTime-type event attributes: these are now automatically converted to timestamps for consistency and better platform compatibility.

v2.5.1

April 2, 2025

⭐ IMPROVEMENTS

  • Upgraded Netmera iOS SDK to version 3.25.0.

  • Upgraded Netmera Android SDK to version 4.0.10.

  • Made compatible with Flutter 3.29.x versions.

v2.5.0

February 3, 2025

⭐ IMPROVEMENTS

  • Upgraded iOS SDK to version 3.24.9.

  • Upgraded Android SDK to version 4.0.7.

  • Implemented SSL pinning for enhanced security.

  • Added checkNotificationPermission method to verify notification permissions programmatically.

v2.4.6

December 23, 2024

⭐ IMPROVEMENTS

  • iOS SDK upgraded from 3.23.16 to 3.24.1

  • Android nmcore updated from 3.14.4 to 3.15.3

  • Android nmfcm & Android nmhms updated to 3.12.1

v2.4.5

November 18, 2024

⭐ IMPROVEMENTS

  • iOS Push Callback Update:

Updated iOS push callbacks to prevent them from triggering on push notifications from other providers.

v2.4.4

October 24, 2024

⭐ IMPROVEMENTS

  • Updated Android SDK to version 3.14.4.

  • Updated iOS SDK to version 3.23.16.

🛠 BUGFIX

  • Resolved an issue where the category list passed as a parameter to the getInboxCountForStatus method was not being sent to the backend.

v2.4.3

August 6, 2024

  • The iOS SDK version within the Flutter package has been updated to 3.23.12.

v2.4.2

July 30, 2024

⭐ IMPROVEMENTS

  • iOS SDK: Upgraded to version 3.23.11.

  • Android SDK: Upgraded nmcore to version 3.14.2.

Integration Changes:

  • Podfile Update: Ensure that the Netmera pods in your Podfile are updated to version 3.23.11.

v2.4.1

June 25, 2024

⭐ IMPROVEMENTS

  • Upgraded Netmera iOS SDK: Updated to version 3.23.6

  • Upgraded Netmera Android SDK: Updated to version 3.14.0

  • Fixed Android Gradle 8+ Release Build Issue: If you are using Android Gradle 8 or above, it is essential to upgrade to at least Flutter SDK 2.4.1 to resolve this issue and ensure seamless builds.

v2.4.0

February 26, 2024

  • Added iOS 3.22.0 package.

⭐ IMPROVEMENTS

  • Integrated Android Core and FCM versions 3.12.0, which support the transition to FCM HTTP v1.

  • Raised the Flutter SDK's minimum Android SDK version to 21 for improved compatibility and performance.

🛠 BUGFIX

  • Addressed an issue where building with Android Gradle 8 was causing problems.

v2.3.7

January 24, 2024

⭐ IMPROVEMENTS

  • Integration of widget callback.

v2.3.6

January 9, 2024

Android Core 3.11.4 was added to this version. To integrate the latest versions, update your dependencies as follows:

implementation 'com.netmera:nmcore:3.11.4'
implementation 'com.netmera:nmfcm:3.11.0'
implementation 'com.netmera:nmhms:3.11.0'

🛠 BUGFIX

  • In the user update callback, the response was sometimes returned as null. This has been addressed, and error responses will now provide more detailed information.

v2.3.5

December 11, 2023

  • Upgraded Android Core SDK version to 3.11.3. and Android FCM version to 3.11.0.

🛠 BUGFIX

  • Resolved an issue with Android synchronous user updates.

v2.3.4

December 5, 2023

  • Added Android core 3.11.1 and HMS 3.11.0 packages.

  • Added iOS 3.21.0 package.

⭐ IMPROVEMENTS

  • User update callbacks are now included in the Flutter SDK.

User Update Method Details

Example Usage in Dart Code:

// User update sync
Netmera.updateUser(user).then((value) {
  print('User updated');
}).catchError((error) {
  print('User update failed: $error');
});

v2.3.2

October 31, 2023

  • Android 3.10.4 and iOS 3.18.0 versions have been added.

⭐ FEATURE

  • The fetchCoupon feature has been integrated into Flutter SDK.

🛠 BUGFIX

  • The Android baseUrl crash issue has been resolved.

v2.3.1

September 20, 2023

⭐ IMPROVEMENTS

  • Android core and FCM 3.10.2 versions have been integrated into the Flutter SDK.

  • The Target API level of the Android module has been raised to 33.

  • The 'startDataTransfer' and 'stopDataTransfer' methods have been added to the plugin.

v2.3.0

⭐ IMPROVEMENTS

Flutter version 2.3.0, which includes Android 3.10.1 and iOS 3.16.0 versions, has been released.

v2.2.0

⭐ IMPROVEMENTS

  • Push action callbacks were moved in foreground thread.

Callback Details

It appears that you have callback methods in your application, where the developer can provide their own custom methods to be executed. These callback methods allow you to receive specific information or perform certain actions requested from Netmera. For example, you can receive push payloads through these callbacks.

In Flutter, there is a problem where callbacks cannot run in the background as the application kills the cross-compiled code to preserve resources. To avoid this issue, you can utilize the "isolate" feature to run the existing callback methods in a separate thread. However, it's important to note that since these callbacks are running in a background thread, they cannot perform long-running tasks or have persistent operations. Once the task in the thread is completed, the thread terminates. This behavior is due to the nature of different threads operating independently. The methods have been moved to the foreground.

  • onPushReceiveBackground callback was created for background messages.

Only the onPushReceiverBackground handling process is performed in the background.

🛠 BUGFIX

  • Flutter iOS event channel issue was fixed.

  • Push action callbacks context issue was fixed.

🔗 INTEGRATION

iOS

  • The section below from the AppDelegate should be removed.

func registerPlugins(registry: FlutterPluginRegistry) {
    GeneratedPluginRegistrant.register(with: registry)
};
  • The following line should be removed from the AppDelegate → didFinishLaunchingWithOptions method.

NetmeraFlutterSdkPlugin.setPluginRegistrantCallback(registerPlugins)
  • The inside of the AppDelegate → didReceiveRemoteNotification method should be changed as follows.

~~FNetmeraService.handleWork(ON_PUSH_RECEIVE, dict:["userInfo" : userInfo])~~

if UIApplication.shared.applicationState == .active {
    FNetmeraService.handleWork(ON_PUSH_RECEIVE, dict:["userInfo" : userInfo])
} else {
    FNetmeraService.handleWork(ON_PUSH_RECEIVE_BACKGROUND, dict:["userInfo" : userInfo])
}

Android

  • There is no change in Android integration.

Dart

  • The NetmeraPushBroadcastReceiver().initialize() method in the main.dart file can now be called anywhere.

  • In order for background messages to be processed, the following method must be added first, outside the main ve MyApp blocks.

@pragma('vm:entry-point')
void _onPushReceiveBackgroundHandler(Map<dynamic, dynamic> bundle) async {
  print("onPushReceiveBackground: $bundle");
}
  • Then this function should be given to onPushReceiveBackground in main before the runApp method as follows.

NetmeraPushBroadcastReceiver.onPushReceiveBackground(_onPushReceiveBackgroundHandler);

v2.1.15

⭐ FEATURE

  • Netmera Android SDK version was upgraded to 3.9.14.

🛠 BUGFIX

  • Decryption failed issue was fixed. (VF crash fixed.)

v2.1.14

⭐ FEATURE

  • Android core SDK version 3.9.12 and FCM version 3.9.4 have been added to the Flutter SDK.

  • Android 13 notification permission methods have been added to the Flutter SDK and integrated with the existing iOS methods. The areNotificationsEnabled and requestPushNotificationAuthorization methods can now be used for both iOS and Android devices.

Push Notification Permissions

If you don't request notification permission at runtime, you can request it by calling the requestPushNotificationAuthorization() method. Note: Notification runtime permissions are required on Android 13 (API 33) or higher. Therefore, before calling the method, make sure your project targets an API of 33 and above.

Netmera.requestPushNotificationAuthorization();

You can call the areNotificationsEnabled() method if you need to know the status of permissions.

Netmera.areNotificationsEnabled().then((enabled) {
      // Use the enabled status of permission as boolean
 });

Usage details of areNotificationsEnabled and requestPushNotificationAuthorization methods have been added to the Readme file.

FEATURE

Attention: Critical Update for Android Users

For more detailed information, you can see the example usage in the example project.

🚀
⚠️
Netmera Flutter SDK page on pub.dev
https://github.com/Netmera/Netmera-Flutter-Example/tree/master