Changelog

4.4.0

June 17, 2025

🚀 New Methods

  • getCurrentExternalId() This method allows you to retrieve the current user's externalId (xid) from the SDK.

  • startDataTransfer() / stopDataTransfer() / isDataTransferEnabled() These methods allow you to control the SDK's data transfer process:

    • When stopDataTransfer() is called, user update and event fire requests will not be sent.

    • When startDataTransfer() is called, user update and event fire requests will resume.

    • isDataTransferEnabled() can be used to check whether data transfer is currently active:

      • Returns true if startDataTransfer() was called.

      • Returns false if stopDataTransfer() was called.

  • A new parameter has been added to the session initialization request: "an": false (anonymous)

    • This parameter indicates whether the session was started anonymously.

    • Default value: false

    • When set to true, the SDK tracks the user anonymously, and user update and event fire requests are not processed.

4.3.0

May 31, 2025

🚀 Features

SSL Pinning Feature

  • Added support for SSL Pinning allowing developers to enable SSL pinning when needed. This feature enhances the security of your application by ensuring trusted communication channels.

SSL Pinning Documentation

4.2.0

May 20, 2025

🚀 Features

Live Activity Support Added

  • Live Activity is now supported in the Swift SDK, enabling apps to display real-time, dynamically updating content directly on the user’s lock screen.

Live Activity Documentation

🛠️ Bug Fixes

Crash Fix for Banner/Widget Transitions

  • Implemented a safety fix for a rare crash related to NSLayoutConstraint.isActive (NSGenericException) observed during show / dismiss transitions of banners or widgets.

Inbox Badge Count Update Fix

  • Fixed an issue where the badge count was not updated after reading inbox messages when Netmera manages badges was enabled under Settings > General > iOS Badge Management.

Geofence Event Dispatch Optimization

  • Geofence events are now immediately sent to the backend as soon as they are triggered by the system

4.1.0

May 15, 2025

🚀 Features

Notification Permission Status Check

  • The Netmera.checkNotificationPermission() method has been added to return the current system-level push notification permission status.

  • This feature allows developers to programmatically determine the user’s push permission state and act accordingly.

Possible return values:

  • NOT_DETERMINED: The user has opened the app but has not yet made a decision regarding push notification permissions.

  • GRANTED: The user has granted permission; the app is allowed to send push notifications.

  • DENIED: The user has denied permission or notifications are disabled from system settings.

4.0.25

April 17, 2025

Improvements

  • Added the piid (push instance ID) value to the event data sent by the SDK for push notifications.

🛠️ Bug Fixes

  • Fixed a crash issue that occurred when users tapped on multiple push notifications in quick succession while the app was open.

4.0.24

April 10, 2025

🚀 Features

Email Preferences API Integration

Email Subscription Preferences

  • The Netmera SDK now supports managing email subscription preferences within your app using the new Email Preferences API.

    • Netmera.setEmailSubscriptionAllowed(true) – Allows users to subscribe to email notifications.

    • Netmera.setEmailSubscriptionAllowed(false) – Allows users to unsubscribe from email notifications.

    • Netmera.isEmailSubscriptionAllowed() – Allows to check if the user has allowed email subscriptions.

Push Click Action: Open Widget

See in User Guide

  • Added an Open Widget option to the Push Click Action section in campaign creation. This enables users to be directed to a relevant widget within the app directly from the push notification.

Improvements

Deep Link Management for Widget Button Actions

  • Improved support for deep linking within widgets. Developers can now handle deep links more effectively when a deeplink is added as a click action in a widget. This enhancement ensures that deep links can be processed properly by the app.

4.0.22

April 2, 2025

Improvements

  • The header x-netmera-framework: swift has been added.

4.0.21

March 20, 2025

Improvements

Timezone ID Collection:

  • The SDK now collects and includes the tzid (timezone ID) in the ids block for all requests.

New Event for Background Location Permission:

  • Introduced the n:blp event, which is triggered when the user grants in-app location permission.

🛠️ Bug Fixes

Track Action Fix:

  • Resolved an issue where long taps were incorrectly recognized as regular taps, preventing certain actions from being triggered. The SDK now correctly verifies tap gestures before executing actions.

4.0.20

January 30, 2025

🚀 Features

  • Autotracking mechanism, which automatically tracks user activities and simplifies page transition tracking and event data collection in mobile applications, has been improved.

  • The SDK now collects region information from device settings, allowing for more targeted engagement based on user regions.

Region Information Use Cases
  1. Storing Region Information on First App Launch

When the user opens the app for the first time, the device’s region information (rgn parameter) is sent to the Netmera backend. This information is added to the user profile and can be used for segmentation.

  1. Updating User's Region Information

If the user changes the region settings on their device, the SDK detects this change and sends the updated information to the backend.

Example: If the device region is Region = "US", the SDK sends "rgn": "US" to the backend.

  1. Sending Region-Specific Push Notifications

You can send push notifications targeted to users in specific regions.

Examples:

  • To users with "rgn": "TR": "New campaign for our users in Turkey!"

  • To users with "rgn": "FR": "Special shipping offers for our customers in France!"

  1. Sending Emergency Alerts and Notifications by Region

In case of emergencies (weather alerts, natural disasters, etc.), users in specific regions will receive alerts.

Examples:

  • To users with "rgn": "JP": "Earthquake warning in Japan!"

  • To users with "rgn": "US": "Delays expected due to storm in the USA."

  1. Segmenting Users Based on Region

Clients can create automatic segments based on users' region.

  • Users with "rgn": "GB" will be included in the "UK" segment.

  • Users with "rgn": "IN" will be included in the "India" segment.

  1. Displaying In-App Messages Based on Region

When a user opens the app, they may receive an In-App message personalized for their region.

  1. Displaying Region-Specific Personalized Content

Upon opening the app, users are shown content tailored to their current region.

  • A user with "rgn": "JP" will see popular products in Japan.

  • A user with "rgn": "FR" will see recommendations for French restaurants and hotels.

  1. Region-Specific Loyalty Programs or Reward Systems

Different loyalty programs can be applied based on the user's region.

  • Users with "rgn": "UK" can receive: "Exclusive 15% bonus points for UK users!"

  • Users with "rgn": "IN" can receive: "Cashback offers available for users in India!"

  1. Displaying Payment Options Based on Region

Users are presented with payment methods relevant to their region.

Example: A popular local bank is offered to users in Turkey, while a different regional bank is suggested for users in Europe.

4.0.19

January 23, 2025

🚀 Features

  • The Instant Show button parameter from the Netmera Panel, which allows users to display specific widgets on the desired page and at the desired time, is now fully implemented in the SDKs and ready for use.

4.0.18

January 13, 2025

🛠️ Bug Fixes

  • Fixed an issue where push notifications sent while the app was in the foreground did not appear in the notification center if not interacted with upon arrival. Notifications will now properly display in the notification center as expected.

4.0.17

December 30, 2024

Improvements

  • Updated kSecAttrAccessible value in Swift SDK from kSecAttrAccessibleAfterFirstUnlock to kSecAttrAccessibleAlways. This update ensures continuous access to Keychain data.

4.0.16

December 12, 2024

🛠️ Bug Fixes

  • Improved the network queue mechanism to ensure accurate and reliable processing of all requests.

4.0.15

December 2, 2024

🛠️ Bug Fixes

  • Widgets exceeding their end time are now correctly excluded during automation deliveries.

4.0.14

November 28, 2024

Improvements

  • Test Device Added Success Alert:

Added a success alert when a test device is added.

🛠️ Bug Fixes

  • Deep Link Handling Crash Fixed:

A crash that occurred when using schema-based deep links has been fixed. This issue, specifically affecting scheme-type deep links (e.g., scheme://...), caused the application to crash before triggering AppDelegate methods. In the new version, necessary checks have been added, and the redirection flow has been improved.

4.0.13

November 13, 2024

Improvements

  • Media content included in push notifications with Inbox features is now accessible. Users can directly view media files (images, videos, etc.) embedded in notifications. Please see the sample code below.

if let mediaURL = data?.push?.mediaAttachmentURL,
let url = URL(string: mediaURL) {
// Load image with url
}
  • Ensured compatibility with Xcode 16 by updating the Swinject framework build process.

  • Widget background updated from gray to a transparent background for enhanced visual appeal.

🛠️ Bug Fixes

  • Resolved a crash issue that occurred when adding a test device via email.

4.0.12

November 8, 2024

🛠️ Bug Fixes

  • Resolved an issue with widget button actions to ensure proper functionality.

4.0.11

September 26, 2024

🛠️ Bug Fixes

  • Resolved an issue causing crashes related to silent push notifications.

4.0.10

September 18, 2024

🚀 Features

  • The Purchase Event can now be used as a base event, providing greater flexibility in event tracking and enabling more advanced analytics and marketing scenarios.

4.0.8

Sep 12, 2024

Improvements

  • Additional logs have been implemented to help address issues and improve troubleshooting. These logs provide better insights for identifying and resolving errors efficiently.

4.0.7

Sep 3, 2024

🛠️ Bug Fixes

  • The did (device ID) value has been improved to maintain its consistency even after the app is uninstalled and reinstalled.

4.0.6

Aug 27, 2024

🛠️ Bug Fixes

  • Resolved an issue that was causing a crash related to the widget.

4.0.5

Aug 1, 2024

🚀 Features

  • We have added support for SwiftUI.

4.0.4

July 19, 2024

🛠️ Bug Fixes

  • Fixed the error encountered in AppDelegate.

4.0.2

May 6, 2024

Improvements

  • Added dsym file for better debugging capabilities.

  • Added 'appV' and 'buildV' to the header for improved version tracking and identification.

Last updated

Was this helpful?