Module Status Legend
- ■ Updated: Module version has been updated in this release.
- ■ Unchanged: Module remains on the previous version.
- ■ Deprecated: Module is deprecated and will be removed in a future release.
Modules
- Core
- Cards
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
What’s NewMoEngageBadgeUpdateEnabled: Added a new Boolean key to the root level ofInfo.plistto control whether the SDK manages the app’s badge count. Defaults toYES. Set toNOif your app manages badge counts independently. For more information, refer to Disable Badge Reset.
- Updated badge count to sync with the actual number of MoEngage notifications in the Notification Center, replacing the previous increment/decrement logic.
- Fixed a crash on iOS 15.x and 16.x during SDK initialization caused by
NSClassFromStringbeing invoked on unrecognized third-party Swift class names.
Cards
Fixes- Fixed an issue where a user could not see a previously deleted card after they regained eligibility for that campaign.
Modules
- Core
- Personalize
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
Fixes- Fixed an issue that caused unit tests to fail consistently when executed without a host application.
Personalize
Improvements- Updated API names and signatures to ensure consistency across all platforms.
InApp
Fixes- Fixed an application crash that occurred when attempting to display a nudge via test push.
Modules
- Core
- Personalize
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
Improvements- Internal improvements. No developer action required.
Personalize
What’s New- MoEngage Personalize SDK: A secure framework for fetching personalized campaign content and tracking user impressions and clicks at the campaign and offering level. For more information, refer to Personalize SDK.
InApp
Improvements- Internal improvements. No developer action required.
Modules
- Core
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
Improvements- Internal improvements. No developer action required.
InApp
Fixes- Fixed a memory leak that occurred when the application was running in the background. (Introduced in 10.09.0) affects versions 10.09.0, 10.10.0, and 10.10.1. Only apps that do not have
MoEngageLiveActivityintegrated are affected.
Modules
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
InApp
Fixes- Fixed click callbacks for HTML in-app messages not executing on the main thread.
Modules
- InApp
- Messaging
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Messaging
What’s New- Self-Handled Background Push: Added support for the Self-Handled Background Push template. For more information, see Push Display Handled by Application.
InApp
Fixes- Fixed a crash that occurred when testing HTML nudge templates via test push. This issue only affected dashboard users previewing campaigns and did not impact production campaigns.
Modules
- Core
- InApp
- LiveActivity
- Messaging
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
What’s New- Custom Proxy Domain: Added support for custom proxy domains to route SDK traffic through a customer-owned subdomain, bypassing ad blockers and private DNS services. For more information, see Custom Proxy Domain for iOS.
- Fixed handling of KMM errors for CocoaPods integration.
InApp
What’s New- Segment Re-evaluation: Trigger-time segment re-evaluation ensures in-app messages are shown only to users who are eligible at trigger time. No integration changes are required; updating to this SDK version is sufficient to enable this feature. For more information, see Re-evaluate Campaign Eligibility.
- Frequency Capping: Limits the number of in-app campaigns shown to a user within a defined period. For more information, see Frequency Capping.
LiveActivity
What’s New- Transactional Live Activity: Added support for Transactional Live Activities. For more information, see Transactional Live Activities.
Messaging
What’s New- Notification Click Tracking: Added the new API
logNotificationClickedto accurately track clicks and dismisses of notifications. For more information, see Track Notification Click.
Modules
- Core
- InApp
- RichNotification
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
Fixes- Added three string operators for campaign trigger conditions:
containsInTheFollowing— matches if the attribute value contains any string from a given list.startsWithInTheFollowing— matches if the attribute value starts with any string from a given list.endsWithInTheFollowing— matches if the attribute value ends with any string from a given list.
InApp
Fixes- Fixed build-time header warnings in the
MoEngageInAppsframework. This is a compile-time fix with no runtime impact.
RichNotification
Fixes- Fixed an intermittent issue where a subtitle configured in the template backup was incorrectly shown in collapsed notifications when the rich push payload did not include a subtitle. Affects any push notification that uses a template backup alongside a rich push payload.
Modules
- Core
- CampaignsCore
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
What’s New- Introduced JWT-based SDK authentication. For more information, refer to JWT Authentication.
CampaignsCore
What’s New- Added support for tracking clicks in emails sent from the MoEngage Platform. This feature is enabled automatically upon upgrading to this SDK version. For more information, refer here.
InApp
Fixes- Fixed InApp stats API mapping.
Modules
- Core
- CampaignsCore
- Cards
- InApp
- Inbox
- Messaging
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
All Modules
Fixes- Fixed deprecated iOS/tvOS 13 API usage across all modules.
InApp
Fixes- Fixed a build error caused by the use of a reserved Objective-C++ keyword in module headers. This affected apps with the
SWIFT_OBJC_INTEROP_MODEcompiler flag enabled. - Fixed in-app delivery statistics syncing issues.
Modules
- Core
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
What’s New- Added multiple projects support in a single workspace. For more information, see Portfolio-Level User Attributes.
- Added support for portfolio-level user attributes tracking. For more information, see User Attributes.
InApp
Fixes- Fixed Objective-C headers, Nullability, and nullable warnings.
- Fixed crash while migrating InApp campaigns data.
Modules
- Core
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
Fixes- Fixed a storage deduplication issue while upgrading from v7.x to v10.x.
InApp
Fixes- Fixed an issue in GIF-based Nudge in-app templates where borders configured via the dashboard were rendering on the surrounding container instead of the GIF/image widget.
Modules
- InApps
- Messaging
- Cards
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
InApp
Fixes- Fixed a thread hang/crash in the in-app condition evaluator (introduced in 9.23.4, fixed in 10.03.2). Only apps that call
MoEngageSDKInApp.sharedInstance.setCurrentInAppContexts(_:)orMoEngageSDKInApp.sharedInstance.invalidateInAppContexts()are affected. Apps that do not use context-based in-app display rules are not impacted.
Messaging
Fixes- Improved push notification received impression tracking performance.
- Added a completion callback to
logNotificationReceived.
Cards
Fixes- Fixed the Cards future qualifier with UID and MultiID on the stats API.
- UID = Unique User ID set via
setUniqueId(_:)API - MultiID = Multiple user identity key-value pairs set via the
identifyUser(identities:)API
Modules
- InApps
- Messaging
- Cards
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
InApp
Fixes- Fixed nullability specifier warnings/errors in ObjC files.
- Fixed the universal deeplink callback to SceneDelegate.
Messaging
Fixes- Fixed the universal deeplink callback to SceneDelegate.
Cards
Fixes- Fixed the universal deeplink callback to SceneDelegate.
Modules
- InApps
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
InApp
What’s New- Added support for Non-Intrusive HTML Nudges. For more information, see HTML Nudge Templates.
- Added support for the new Test In-App experience. For more information, see Test Your In-App Campaign.
Modules
- Core
- InApps
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
Fixes- Fixed an issue with impression tracking when signature validation is enabled on server.
InApp
Fixes- Fixed GIFs and images not remaining visible in in-app nudges when accessibility features are enabled.
- Fixed a random crash in in-app messages on removing context. If you are not using the context-based InApp APIs (
setCurrentInAppContexts(_:)andinvalidateInAppContexts()), you are not affected by this issue.
Modules
- Core
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
Fixes- Internal improvements. No developer action required.
Modules
- Core
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
What’s New- Added support for initializing the default SDK instance with configuration data in the application’s Info.plist. This is primarily intended for cross-platform frameworks (such as React Native, Flutter, and Cordova) that use this mechanism for SDK initialization and is not exposed as a native SDK API. No action required for native iOS developers.
Modules
- Core
- Cards
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
Fixes-
Fixed the order of event tracking in
offeringClicked():- Before (10.02.2 and earlier):
Offering Experience Clicked(experienceClicked) →Offering Clickedstats event - After (10.02.3+):
Offering Clickedstats event →Offering Experience Clicked(experienceClicked)
Offering Clickedstats event now fires first, ensuring offering attribution is recorded before the experience click event. - Before (10.02.2 and earlier):
- Fixed data tracked immediately after logout being lost.
Cards
Fixes- Fixed missing accessibility data in the card metadata dictionary for cross-platform frameworks.
Modules
- Core
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
What’s New- Added APIs for tracking clicks and impressions for personalization offerings. For more information, see Offerings Events Tracking.
Modules
- Messaging
- Cards
- LiveActivity
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Messaging
Fixes- Fixed notification click impressions not being tracked with proxy enabled or disabled when the application is launched from a killed state with delayed initialization.
Cards
What’s New- Added accessibility support for card campaigns. For more information, see Accessible Campaigns in MoEngage.
LiveActivity
What’s New- Added support for Broadcast Live Activities. For more information, see Broadcast Live Activities for iOS Push Campaigns.
Modules
- Core
- Messaging
- Inbox
- InApps
- RealTimeTrigger
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Core
What’s New- Added APIs for tracking personalization clicks and impressions. For more information, see Personalize Experience Events tracking.
Messaging
What’s New- Added accessibility support for push campaigns. For more information, see Accessible Campaigns in MoEngage.
- Added redundancy in tracking provisional push permission status, will be tracked once every 24 hours.
Inbox
What’s New- Added accessibility support for push campaigns. For more information, see Accessible Campaigns in MoEngage.
InApp
What’s New- Added accessibility support for in-app campaigns. For more information, see Accessible Campaigns in MoEngage.
- Fixed a crash in the in-app display path caused by an unguarded
rootViewControlleraccess. SDK 10.00.0 raised the deployment target to iOS 13 and adopted scene-based window management, but the in-app presentation logic did not account for cases whererootViewControllerisnilbefore a scene’s window is fully established. A nil check is now in place before attempting to present the campaign view. Affected versions: 10.00.0 only.
Known limitations when accessibility features are enabled:
- The GIF nudge template cannot be resized.
- Additional border space is displayed in the maximize state for resizable nudges.
RealTimeTrigger
What’s New- Added accessibility support for RTT push campaigns. For more information, see Accessible Campaigns in MoEngage.
Modules
- Core
- Inbox
- InApps
- RealTimeTrigger
Dependencies
- Swift: 5.0.0
- iOS: 13.0
- tvOS: 13.0
Action required before upgrading to 10.00.0:
- iOS and tvOS deployment targets are now 13.0. Update your project’s deployment target before integrating.
- Support for Intel-based simulators has been removed.
- Deprecated initializer and SSL configuration APIs have been removed from the
Coremodule (see the table below).
- Updated iOS and tvOS deployment target to 13.
- Removed support for Intel-based simulators.
Kotlin Multiplatform
Trigger condition evaluation for InApps, Inbox, and RealTimeTrigger now uses a single shared library built with Kotlin Multiplatform, replacing separate iOS and Android implementations. This consolidation keeps evaluation logic in one place as the SDK evolves.Core
Breaking ChangesRemoved deprecated APIs:| Then | Now |
|---|---|
MoEngageSDKConfig(withAppID:) | MoEngageSDKConfig(appId:dataCenter:) |
MoEngageSDKConfig.networkConfig.sslVerificationConfig | NA |
Inbox
What’s New- Added support for notification grouping, replacement & event tracking. For more information, see Push Notification Grouping and Push Notification Update.
- Migrated trigger evaluation logic to Kotlin Multi-Platform. This adds approximately 3.3 MB to the binary size on arm64 devices.
- Fixed the MoEngageInboxEntry.collapseId being set to empty instead of nil when the value is not present in the payload (introduced in 9.24.0).
InApp
What’s New- Added Kotlin Multi-Platform-based event trigger condition evaluator.
- Fixed persistent data migration failing from 7.x.x and 8.x.x to latest version.
RealTimeTrigger
What’s New- Added Kotlin Multi-Platform-based event trigger condition evaluator (
MoEngageKMMConditionEvaluator), enabled by default.
Modules
- Messaging
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Messaging
Fixes- Fixed Rich landing action for push notification when opened from inbox in killed state.
- Fixed push notification tracking in application killed state.
InApp
What’s New- Added support for Session Triggered InApps. For more information, see Create In-App Campaign.
Modules
- Messaging
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Messaging
Fixes- Fixed push opt-in tracked as false if banners notification settings is disabled (introduced in 9.19.0).
Modules
- Messaging
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Messaging
Fixes- Fixed notification clicks not being tracked when the app was launched from a killed state via a notification tap.
Modules
- Geofence
- Device Triggered
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Geofence
Fixes- Fixed a “symbol not found” exception introduced in 9.23.0.
Device Triggered
Fixes- Fixed a “symbol not found” exception introduced in 9.23.0.
Modules
- Core
- Cards
- InApps
- Inbox
- Messaging
- Geofence
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Added multiple identities support. For more information, see Unified Identity (Identity Resolution).
Cards
What’s New- Cards sync on user identity set or update.
InApp
What’s New- InApp sync on user identity set or update.
- Added Click analysis support in HTML.
- Fixed Self-Handled Trigger Callback not executing on the main queue for the TestInApp flow (introduced in 9.19.0).
- Fixed data accumulation by removing unused data from older versions (introduced in 9.21.0).
Inbox
Fixes- Fixed inbox expiry time migration (introduced in 9.21.0).
Messaging
Fixes- Fixed data accumulation by removing unused data from older versions (introduced in 9.21.0).
RichNotification
Geofence
Known Issues- A “symbol not found” exception (introduced in 9.23.0). Fixed in 9.23.1.
Device Triggered
Known Issues- A “symbol not found” exception (introduced in 9.23.0). Fixed in 9.23.1.
Modules
- Core
- Cards
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Updated repo URL to https://github.com/moengage/apple-sdk for faster SPM dependency fetching.
Cards
Fixes- Fixed campaigns navigation data parsing (introduced in 9.21.0).
Modules
- Core
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
Improvements- Internal improvements. No developer action required.
Modules
- Core
- Cards
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Added InApp InSession Attributes support. For more information, see On Session Start.
Cards
Fixes- Fixed logged in users card sync (introduced in 9.21.0).
InApp
What’s New- Added InApp InSession Attributes support. For more information, see On Session Start.
- Fixed a crash that occurred when switching App IDs at runtime (reinitializing the SDK with a different App ID while the app is running). This fix only applies to apps that switch App IDs at runtime; apps using a single, fixed App ID are not affected.
Modules
- Core
- Inbox
- Cards
- InApp
- RichNotification
- Geofence
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Added APIs for mParticle integration. For more information, refer here.
- Added SDK feature adoption tracking.
- Internal improvements. No developer action required.
- Fixed Config API
log_levelparsing.
Inbox
Improvements- Internal improvements. No developer action required.
Cards
Improvements- Internal improvements. No developer action required.
- Fixed images getting trimmed in Illustration Cards.
InApp
Improvements- Internal improvements. No developer action required.
- Fixed Bottom margin issue in Nudges.
RichNotification
Improvements- Internal improvements. No developer action required.
- Fixed the random crash seen due to memory limit.
Geofence
Improvements- Internal improvements. No developer action required.
Modules
- Core
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
Fixes- Removed debug symbols from frameworks (introduced in 9.18.0).
Modules
- Core
- Messaging
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
Fixes- Fixed integer in timestamp/date based trigger conditions not working.
- Fixed the issue where Tablet device model is tracked as MOBILE.
InApp
What’s New- Added JSON Object support in campaign trigger condition evaluator.
Modules
- Core
- Inbox
- Cards
- InApp
- RichNotification
- Device Triggered
- Geofence
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Added support for provisional push.
- Added push opt-in device attribute and events tracking.
Cards
What’s New- Added Cards fetch on login support.
InApp
What’s New- Multiple self-handled InApp support.
Modules
- Core
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
All Modules
Fixes- Fixed SPM package resolution.
Modules
- Core
- Geofence
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
Improvements- Internal improvements. No developer action required.
- Deprecated SDK provided SSL Pinning in favour of OS provided one.
Geofence
Fixes- Geofence API will be blocked, if data tracking is opted out.
Modules
- Core
- InApps
- Cards
- Geofence
- RichNotification
- Inbox
- RealTimeTrigger
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Added JSON object support to user attributes.
- Handled environment updates with the same installation.
- Fixed crash by handling data race when the application comes to foreground.
- Notification impression not tracked after app update.
- Fixed tracked object attribute duplication.
- Reset user completion handler not invoked.
InApp, Cards, Geofence, RichNotification, Inbox, RealTimeTrigger
What’s New- Handled environment updates with the same installation.
InApp
Fixes- InApp touch navigates to parent controller.
Modules
- Core
- InApp
- Geofence
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Added support of Array in trigger-based InApps.
- Fixed geofence enabled migration with encryption.
InApp
Fixes- Fixed SwiftUI reference crash on iOS 12.
Geofence
Fixes- Fixed the API issue that caused geofence campaigns to not be displayed.
- Fixed hang caused with CLLocationManager.
Modules
- Core
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Added DC-06 support.
- Fixed where notification received event was tracked when SDK was disabled.
- Fixed push token migration from 7.x version.
Modules
- Core
- InApp
- Inbox
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
Fixes- Fixed migration crash from 8.2.0 to 9.17.0.
- Fixed the issue where push token was not being sent in API call when app group id is missing.
- Fixed the issue where API call is made when SDK is disabled.
- Fixed the issue where ReInstall was not getting tracked.
InApp
Fixes- Fixed non-intrusive InApp breaking with tabbar.
Inbox
Improvements- Internal optimization to handle the inbox storage.
Modules
- Core
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Added support to provide optional deep link callback to MoEngageInAppNativeDelegate protocol via MoEngageInAppConfig.
InApp
What’s New- Added support to provide optional deep link callback to MoEngageInAppNativeDelegate protocol via MoEngageInAppConfig.
- Fixed type name collision.
- MoEngageInAppNativeDelegate protocol where MoEngageInAppAction is replaced with MoEngageInAppNavigationAction.
| Then | Now |
|---|---|
func inAppClicked(withCampaignInfo inappCampaign: MoEngageInAppCampaign, andNavigationActionInfo navigationAction: MoEngageInAppAction, forAccountMeta accountMeta: MoEngageAccountMeta) | func inAppClicked(withCampaignInfo inappCampaign: MoEngageInAppCampaign, andNavigationActionInfo navigationAction: MoEngageInAppNavigationAction, forAccountMeta accountMeta: MoEngageAccountMeta) |
navigationAction.screenName is dropped from MoEngageInAppAction. Instead use navigationAction.navigationUrl of MoEngageInAppNavigationAction.Modules
- Core
- Inbox
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core & Inbox
Fixes- Fixed app rejection issue due to privacy manifest.
Modules
- Core
- InApp
- Cards
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
Core
What’s New- Added AND support in inApp trigger-campaign evaluation.
- Provided callback when force logout is completed.
- Added tvOS platform identifier changes.
- Removed linking to AdSupport by default. AdSupport and AppTrackingTransparency need to be linked by app target for IDFA tracking.
- Fixed the issue where session start was not tracked in some cases.
- Fixed crash in network session delegate.
InApp
What’s New- Dismiss inApp on context change.
- Added tvOS platform identifier changes.
- Added AND support in inApp trigger-campaign evaluation.
Cards
What’s New- Added tvOS platform identifier changes.
Modules
- InApp
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
InApp
What’s New- Added support for Non-Intrusive InApps.
- Removed support for existing embedded nudges.
getNudgeView(completionBlock: @escaping NudgeCreationCompletionBlock)getNudgeView(forAppId appId: String? = nil, completionBlock: @escaping NudgeCreationCompletionBlock)nudgeCampaignShown(_ campaignInfo: MoEngageInAppCampaign?)nudgeCampaignShown(_ campaignInfo: MoEngageInAppCampaign?, forAppId appId: String? = nil)
Modules
- Core
- InApp
- Cards
- Geofence
- RichNotification
- Inbox
- RealTimeTrigger
Dependencies
- Swift: 5.0.0
- iOS: 11.0
- tvOS: 11.0
| Then | Now |
|---|---|
sdkConfig.enableLogs = true | sdkConfig.consoleLogConfig = MoEngageConsoleLogConfig(isLoggingEnabled: true, loglevel: .verbose) |
InApp
What’s New- Added support for Non-Intrusive InApps.
Modules
- Core 9.14.0
- InApp 4.13.0
- Cards 4.13.0
- Geofence 5.13.0
- RichNotification 7.13.0
- Inbox 2.13.0
- RealTimeTrigger 2.13.0
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Core
What’s New- Updated hashing algorithm usages to SHA256.
- Handled removing of invalid value from an array of user attributes and parsing the rest.
- Fixed redirection URLs being percent encoded.
- Bug fix for processing notifications action for Screen-Navigation from Inbox (Notification Center) not behaving the same in SDK version 9.xx as it used to be in 7.xx series.
InApp, Cards, RichNotification
- Updated hashing algorithm usages to SHA256.
Geofence, Inbox, RealTimeTrigger
- Updated the dependency to MoEngage-iOS-SDK 9.14.0.
Modules
- Core 9.13.0
- InApp 4.12.0
- Cards 4.12.0
- Geofence 5.12.0
- RichNotification 7.12.0
- Inbox 2.12.0
- RealTimeTrigger 2.12.0
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Core
- Added notification impression and click API.
- Cards in first app.
- Fixed the common logs issue.
- Incorrect model_name tracked for iPhone 14 Pro.
InApp
- Added self-handled inapps for tvOS.
- Added OR condition support for trigger events.
Cards
- Added self-handled cards for tvOS.
Geofence
- Updated the dependency to MoEngage-iOS-SDK 9.13.0.
RichNotification
- Added notification impression and click API.
Inbox
Fixes- Notifications are not listed in the inbox when app is in background and storage encryption is enabled.
- Fixed the clicked state for inbox message when the notification is clicked from terminate state.
RealTimeTrigger
- Updated the dependency to MoEngage-iOS-SDK 9.13.0.
Modules
- Core 9.12.0
- InApp 4.11.2
- Cards 4.11.1
- Geofence 5.11.1
- RichNotification 7.11.1
- Inbox 2.11.1
- RealTimeTrigger 2.11.1
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Core
Fixes- Fixed
setImageandsetGIFextension methods name collision.
Cards
Fixes- Fixed
setImageandsetGIFextension methods name collision. - Fixed invalid gif data not falling back to static image.
- Fixed text styles getting duplicated in Card UI.
- Updated the dependency to MoEngage-iOS-SDK 9.12.0.
RichNotification
Fixes- Fixed
setImageandsetGIFextension methods name collision. - Fixed invalid gif data not falling back to static image.
- Fixed gif getting duplicated in carousal.
- Updated the dependency to MoEngage-iOS-SDK 9.12.0.
InApp, Geofence, Inbox, RealTimeTrigger
- Updated the dependency to MoEngage-iOS-SDK 9.12.0.
Modules
- Core 9.11.0
- InApp 4.11.0
- Cards 4.11.0
- Geofence 5.11.0
- RichNotification 7.11.0
- Inbox 2.11.0
- RealTimeTrigger 2.11.0
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Core
- Added GZIP Support in all API calls.
- Internal code optimizations.
InApp
Fixes- Fixed the boolean value tracked as 0/1 in HTML InApp.
- Fixed API failure tracked when the campaign is paused.
- Updated the dependency to MoEngage-iOS-SDK 9.11.0.
Cards
FixesgetCardsForCategoryAPI returns all cards if the category is All.- Updated the dependency to MoEngage-iOS-SDK 9.11.0.
Geofence, Inbox, RealTimeTrigger
- Updated the dependency to MoEngage-iOS-SDK 9.11.0.
RichNotification
- Updated the dependency to MoEngage-iOS-SDK 9.11.0.
- Internal code optimizations.
Modules
- Core 9.10.2
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Core
Fixes- Fixed crash while serializing the JSON by removing invalid values on migration.
Modules
- Geofence 5.10.1
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Geofence
- Fixed the threading issue in geofence module by unblocking the main thread.
Modules
- Core 9.10.1
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Core
- Added SSL pinning support for network requests.
Modules
- Core 9.10.0
- InApp 4.10.0
- Cards 4.10.0
- Geofence 5.10.0
- RichNotification 7.10.0
- Inbox 2.10.0
- RealTimeTrigger 2.10.0
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Core
- Added DC-100 data centre.
- iOS breakpoint issue fix by changing the Xcode config settings.
- Handled duplicate tracking of Push-Preference.
- Fixed API connection timeout.
InApp
- iOS breakpoint issue fix by changing the Xcode config settings.
- Fixed crash by handling the nil value.
Cards
- Added Cards sync API and Cards delivered API.
- iOS breakpoint issue fix by changing the Xcode config settings.
Geofence, RichNotification, Inbox, RealTimeTrigger
- iOS breakpoint issue fix by changing the Xcode config settings.
Modules
- Core 9.9.0
- InApp 4.9.0
- Cards 4.9.0
- Geofence 5.9.0
- RichNotification 7.9.0
- Inbox 2.9.0
- RealTimeTrigger 2.9.0
Dependencies
- Swift: 5.0.0
- iOS: 11.0
All Modules
- iOS breakpoint issue fix by creating framework from Xcode 14.3.1.
Modules
- Cards 4.8.1
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Cards
- Added cards sync API for self-handled cards.
- Fixed crash by returning the completion handler in main thread.
Modules
- InApp 4.8.3
Dependencies
- Swift: 5.0.0
- iOS: 11.0
InApp
Fixes- Handled the callback for selfHandled InApp when called before sync API.
Modules
- Core 9.8.2
Dependencies
- Swift: 5.0.0
- iOS: 11.0
Core
Fixes- Added integration details in Extension API call.
Modules
- Core 9.7.0
- InApp 4.7.0
- Cards 4.7.0
- Geofence 5.7.0
- RichNotification 7.7.0
- Inbox 2.7.0
- RealTimeTrigger 2.7.0
Core
- Added DC-05 support.
Modules
- Core 9.5.1
Core
Fixes- Handled the deep link callback to SceneDelegate class.
- Fixed crash due to data race condition in the Core module.
Modules
- Core 9.5.0
- InApp 4.5.0
- Cards 4.5.0
- Geofence 5.5.0
- RichNotification 7.5.0
- Inbox 2.5.0
- RealTimeTrigger 2.5.0
Core
- Code optimization.
Modules
- InApp 4.3.1
InApp
- Fixed the validation condition to consider non-expired campaigns for displaying.
Modules
- Cards 4.2.1 / 3.7.1
Cards
- Cards clicked status is not being updated for self handled cards.
Modules
- Core 9.2.1
Core
- Fixed the delay in deeplink callback for the custom URL scheme.
- Handled the crash when registering for remote notifications.
Modules
- Core 9.1.0
- InApp 4.1.0
- Cards 4.1.0
- Geofence 5.1.0
- RichNotification 7.1.0
- Inbox 2.1.0
- RealTimeTrigger 2.1.0
Core
- Handling the logic to discard RichLanding action if the URL does not start with
http:orhttps:. - Carousel Image Order Mismatch in collapsed mode for rich notifications.
InApp
- Added dSYM file support for debugging.
Cards
- Handle sorting of self handled cards based on the pinned cards and updated time for cards.
- Cards clicked status is not being updated for self handled cards.
Geofence, Inbox, RealTimeTrigger
- Added dSYMs files for debugging.
RichNotification
- Carousel Image Order Mismatch in collapsed mode for rich notifications.
Modules
- Core 8.5.0
- InApp 3.5.0
- Cards 3.5.0
- Geofence 4.5.0
- RichNotification 6.5.0
- Inbox/RTT 1.5.0
Core
- Handled Carousel Image Order Mismatch in collapsed mode for rich notifications.
Cards
- Handle sorting of self handled cards based on the pinned cards and updated time for cards.
- Cards clicked status is not being updated for self handled cards.
RichNotification
- Handled Carousel Image Order Mismatch in collapsed mode for rich notifications.
Modules
- Core 9.0.0
- InApp 4.0.0
- Sub-modules vX.0.0
- Removed optional modules from MoEngageSDK target.
- Updated
disableBadgeResetmethod ofMoEngageSDKMessagingto take Bool as its parameter. - All the classes and modules are prefixed with MoEngage.
- Renamed MOCore to MoEngageCore for iPhone SDK and tvOS SDK.
Core
Fixes- Badge is not getting reset when the disableBadgeReset is set as false.
- Fixed test inapp api getting called multiple times on clicking the test inapp push notification.
InApp
- Migrated MoEngageInApp, MoEngageInAppCampaign, MoEngageInAppSelfHandledCampaign, MoEngageInAppAction, MoEngageInAppNativeDelegate from Objective-C to Swift.
- Added API documentation.
- All the classes and modules are prefixed with MoEngage.
- Fixed inapp getting auto dismissed before the auto dismiss interval expires.
Sub-modules
- All the classes and modules are prefixed with MoEngage.
Modules
- Core 8.4.2
Core
- Updated AppDelegate swizzler to handle crash while registering for remote notifications.
- Handled removing of infinity and NaN from the payload on migration.
Modules
- Cards 3.4.2
Cards
- Handled the “All” category in Cards UI to be hidden by default for landscape mode.
Modules
- Core 8.4.1
Core
- Fixed crash while passing infinity and NaN to SDK via user attributes and track event properties.
- Added support to track userAttribute of type Float.
Modules
- InApp 3.4.1
InApp
- Added support to take safeArea inset for Applications with SceneDelegate.
Modules
- Core 8.4.0
- InApp 3.4.0
- Sub-modules vX.4.0
Core
- Added MoEngageSDK Initialization method with SDK State.
- Fixed handling of notification observers to avoid runtime crashes.
- Added exception handling to fix the crashes in a few scenarios.
InApp
- Added support to take the custom inset for InApp nudge in
MOSDKConfigusingMoEngageInAppConfigclass.
Modules
- RichNotification 6.3.2
- RealTimeTrigger 1.3.1
RichNotification & RealTimeTrigger
- Handled updating of badge count for Notifications.
Modules
- Core 8.3.1
- Inbox 1.3.1
- InApp 3.3.1
Core
- Added support for
setUserAttributeISODatein the ISO formatyyyy-MM-dd'T'HH:mm:ss.SSS'Z'. - Added API
setDateOfBirthInISOto track Date of birth in ISO format. - Added API
MoESdkStateHelper.isSDKInitializedto check if SDK is initialised.
Inbox
- Added completionHandler for API
markInboxNotificationClick,removeInboxMessageandremoveInboxMessages. - On calling
trackInboxClick, the notification will be marked as read.
InApp
- Handled dataType mismatch in
trackDismissof HTML InApp.
Modules
- RichNotification 6.3.1
RichNotification
- Handled downloading of resources for Basic notification.
Modules
- Core 8.3.0
- InApp/Inbox/RTT vX.3.0
- RichNotification 6.3.0
- Cards 3.3.0
- Geofence 4.3.0
Core
- Fixed multithreading issue in SDK, which led to crashes in few cases.
- Added API
MoESdkStateHelper.isSDKEnabledto fetch current state of the SDK.
RichNotification
- Updated the dependency to MoEngage-iOS-SDK 8.3.0.
- Campaign stats tracking was missed in some cases from the Notification Service extension.
Cards
- Updated the dependency to MoEngage-iOS-SDK 8.3.0.
- Fixed issue in UIRefreshControl.
Modules
- Core 8.2.1
- InApp 3.2.1
- Inbox 1.2.1
- RealTimeTrigger/Rich/Geofence vX.2.1
- Cards 3.2.1
Core
- Fixed the lldb issue when integrating MoEngage-iOS-SDK to Swift application.
- Removed public init method for UIColor.
InApp
- Fixed the lldb issue when integrating MoEngage-iOS-SDK to Swift application.
Inbox
- Fixed the lldb issue when integrating MoEngage-iOS-SDK to Swift application.
- Handled customisation of
navigationBarColorwhen pushing the InboxController.
Cards
- Fixed the lldb issue when integrating MoEngage-iOS-SDK to Swift application.
- Handled the customisation of
cardSelectionTintColorandnavigationBarColorwhen presenting and pushing the CardsController.
Modules
- Core 8.2.0
- InApp 3.2.0
- Inbox 1.2.0
- RealTimeTrigger 1.2.0
- RichNotification 6.2.0
- Cards 3.2.0
- Geofence 4.2.0
Core
- Updated the framework name from MoEngage to MoEngageSDK.
- RealTimeTrigger and Inbox feature is separated from MoEngageSDK. Hence these modules must be integrated explicitly.
- Deprecated existing UserAttribute methods.
- Provided Swift Package manager support to install the SDK.
InApp
- Changes to support App version, SDK version and platform in the trigger condition of InApps.
- Updated the dependency to MoEngage-iOS-SDK 8.2.0.
- Renamed the module to MoEngageInApps.
- Provided Swift Package manager support to install the SDK.
- Fixed the parsing error in InApp payload due to datatype mismatch.
Other Modules
- Updated the dependency to MoEngage-iOS-SDK 8.2.0.
- Renamed modules (e.g., MoEngageRichNotification, MoEngageCards, MoEngageGeofence).
- Provided Swift Package manager support to install the SDK.
- Breaking Inbox and RTT from the main SDK.
Modules
- InApp 2.2.1
InApp
- Fixed the appearance of thin grey line above the label in the InApp when displayed in larger screen devices.
Modules
- Core 7.2.0
Core
- Added Capacitor integration type.
- MORichNotification dependency updated to
~> 5.3.0(Fixed height for the message in the notification). - InApp, Cards dependency updated to
~> 2.2.0. - Geofence dependency updated to
~> 3.2.0.
Modules
- Core 7.1.4
- InApp 2.1.2
Core & InApp
- SDK version tracking fix, version was being tracked incorrectly in a few cases.
Modules
- InApp 2.1.1
InApp
- Handled multiline text in text widget getting clipped in some of the devices.
Modules
- Core 7.1.3
Core
- Changed the implementation to determine SDK version, as in a few instances App Version was getting tracked as SDK version.
Modules
- Core 7.1.1
Core
- MORichNotification dependency updated to
~> 5.2.0. - Changes in custom Push Template implementation to have layout in-line with iOS 15.0 standard notifications UI.
Modules
- Core 7.1.0
Core
- Released SDK modules as XCFramework.
- HTML InApp Support Added.
- Delivery Funnel implementation for InApps.
- Handling of Control Group Error in InApps.
- Campaign Context tracking for in-app Stats.
- Added a method to detect App Launches due to MoEngage silent push notifications.
Modules
- Core 7.0.5
Core
- Image resources, Deep links, and Richlanding URLs are now percentage encoded if not already and then processed.
Modules
- Core 7.0.3
Core
- Fixed a multithreading issue in Analytics Module, which led to crashes in a few cases.
Modules
- Core 7.0.0 / 7.0.1
Core
MOSDKConfigclass introduced to initialize the SDK with new initialization methods.- Remote Logger added for debugging.
- API Encryption option provided in the SDK.
- SDK UserDefault keys saved in a separate suite and not in standard User Defaults.
- SDK API Hosts are updated, configure the same by setting appropriate Data Center in
MOSDKConfig. - SDK to support iOS 10.0 and above, iOS 9.* support dropped.
- Internal optimizations.
Modules
- Core 6.2.5
Core
- Bugfix: One of the SDK background tasks while syncing the data was getting terminated prematurely.
Modules
- Cards 6.2.4
Cards
- Changes to support MoEngageCards [Version: 1.1.0] Module.
BUILD_LIBRARY_FOR_DISTRIBUTIONenabled for MOCards.- MOCards class renamed to MoEngageCards.
Modules
- Cards 6.2.3
Cards
- Fixes for including the simulator module maps for MoEngageCards [Version: 1.0.2] Module.
Modules
- Core 6.2.2
Core
- Bugfix: Universal Links was taking the user to Safari, instead of processing it inside the app.
- Xcode 12 Build settings changes to exclude arm64 architecture for Simulator.
Modules
- Core 6.2.0 / 6.2.1
Core
- Support for Push Templates added (Simple Image Carousel & Stylized Basic).
- Inbox support with the same app group id for multiple apps supported.
Modules
- Cards 6.1.0
Cards
- Support for Cards Campaign added.
- InApp exit animation was not being applied correctly.
- Fixed an intermittent crash occurring in MONetworkUtils while determining the SDK Version.
Modules
- Core 6.0.3
Core
- Bugfix: Universal Links were not considered for Source tracking in Analytics Module.
Modules
- Core 6.0.2
Core
- Fixed an issue where weak linking of MoEngageInApp and MOGeofence was not working, which was causing an issue while submitting the build to AppStore.
Modules
- Core 6.0.0
Core
- Removed support for iOS 8.
- SDK rearchitected and split into 5 modules: MoEngageCore, MOAnalytics, MOMessaging, MOInApp and MoEngage (Umbrella).
- InApp Module revamped and integrated separately.
- Initialization methods are deprecated.
MOPayloadBuilderis deprecated, useMOPropertiesfor tracking events.- Added new methods to track date event and user attributes using ISO date string.
Modules
- Core 5.2.7 / 5.2.6
Core
- Bugfix: Universal Links were not considered for Source tracking in Analytics Module.
- Minor optimizations.
Modules
- Core 5.2.5
Core
- Changes in data tracking where the event time is tracked in the Gregorian calendar irrespective of user calendar settings.
Modules
- Core 5.2.0
Core
- Bugfix: Session expiry check was failing whenever the app was opened from terminated state.
- Bugfix: Notification Clicks were not processed from terminated state (fix for versions 5.0.0 to 5.1.0).
Modules
- Core 5.0.3
Core
- Added a main thread check for AppDelegate Swizzling and launch option processing.
Modules
- Core 5.0.1
Core
- Session start time is tracked in the GMT timezone instead of the device time zone.
Modules
- Core 5.0.0
Core
- Session and Source tracking is possible in the SDK.
- AppDelegate Swizzling implemented. Can be disabled via
MoEngageAppDelegateProxyEnabledin Info.plist. - Removed support for previously deprecated methods.
Modules
- Inbox 4.4.0
Inbox
- Inbox module revamp.
- Notifications synced from Notification Service Extension using
MORichNotification(version 3.0.0). - Internal changes for secure SDK API calls.
Modules
- Core 4.2.3
Core
- Real-time trigger bugfix for wrong payload in offline scenario for personalization.
Modules
- Inbox 4.2.2
Inbox
- Delegate method
inboxCellSelectedWithPushDict:provided for Push Notification Payload on clicking inbox notification. - Added
shouldProcessNotificationActionsto MOInboxViewController.
Modules
- GDPR 4.1.0
GDPR
- SDK changes to make it GDPR compliant.
- Provided opt-out methods for tracking, push, and in-app.
- Added
resetUserWithCompletionBlock:andflushWithCompletionBlock:.
Modules
- Dynamic Framework 4.0.0
Dynamic Framework
- SDK converted from static library to dynamic framework.
- Implementation of Real-Time Triggers.
Modules
- Core 3.9.2
Core
- Issue fixed where SDK crashed due to calling sync in multiple threads.
- Added
dismissRichLandingWebViewControllerWithAnimation:.
Modules
- InApp 3.9.1
InApp
- Bugfix: Black tint view added on screen in case of Self Handled Smart Trigger InApp.
Modules
- Core 3.9.0
Core
- Conditional Action supported in inApp for rating template.
- Periodic Flush of events introduced.
- Tracking of Device Model implemented.
Modules
- Core 3.8.1
Core
- Fixed issue where calling
resetUsersimultaneously withsyncNowcaused a crash.
Modules
- Core 3.8.0
Core
- Provided
setAlias:method to update UNIQUE_ID. setUserUniqueID:now resets current user if a new value is provided.
Modules
- Inbox 3.7.2
Inbox
- Provided method to track inbox notification clicks.
- Removed Show Only In Screen check for Test InApp.
Modules
- Inbox 3.7.1
Inbox
- Provided methods to mark an inbox notification as read.
- Added additional debug logs for InApp.
Modules
- Inbox 3.6.0
Inbox
- Inbox notifications have an expiry value (default 30 days).
- Locale tracking is no longer default; use
trackLocalemethod.
Modules
- Core 3.5.0
Core
- Fixed Locale tracking issue in iOS 9 and below.
- Fixed delay in processing deep-linking when push clicked in foreground.
Modules
- Inbox 3.4.1
Inbox
removeInboxMessagesmethod provided to delete all messages.- Fixed a crash that occurred while showing self-handled inApp.
Modules
- Core 3.4.0
Core
- Device Locale tracked through SDK.
- Fixed bug where self-handled inApp data wasn’t passed in test pushes.
- Additional parameters for self-handled inApp: expiry, max times, autoDismiss, persistent.
Modules
- Core 3.3.0
- App Lifecycle methods deprecated; handled internally now.
- Syncing optimization for tracked events.
- Separate methods for default User Attributes (EmailID, User Name, etc).
Modules
- InApp 3.2.2
InApp
- Fixed bug locating MOInbox.storyboard as framework.
- InApp permission/settings handling efficiency.
Modules
- Core 3.2.0
Core
- Enabled tracking of push delivery via Notification Extension and AppGroups.
- Enabled Test InApp foreground receipt.
- Media-attachment support for iOS Rich Notifications in Inbox.
Modules
- InApp 3.1.0
InApp
- Fixed bug where InApp was shown over the keyboard.
- Improved logging mechanism.
Modules
- UserNotifications 3.0.0
Core
- Using UserNotifications framework for iOS 10.
- Changes for supporting Notification Actions in iOS 10.
MORichNotificationsadded to handle rich notifications in extensions.
Modules
- Core 2.4.0
Core
- Supporting Nudges for testing InApps.
- Inbox module supports dictionary alerts.
- Bugfix: InApp can be shown along with Nudges.
- Handle Rich Landing from push fixes.
Modules
- Core 2.3.2
Core
- RichLanding content shown in
SFSafariViewController(iOS 9+). - Tracking change in Push Preference status event.
- Unity iOS Support included.
Modules
- Core 2.3.0
Core
- Unified App for both testing and production.
- Separate methods for SDK initialization to differentiate test (DEBUG) vs production (RELEASE) devices.
Modules
- Core 2.2.0
Core
- Notification Categories for action buttons.
- SDK handles Deeplinking, Coupon Code, and Rich landing by default.
- Support for custom notification sounds.
Modules
- Core 2.0.0
Core
- Introduced in-app Nativ.
- Old callbacks removed; new callback structure introduced.
- Self Handled in-apps support.
Modules
- Core 1.9.5
Core
- Handled rare cases where IDFV can be nil if device is restarted and not unlocked.
Modules
- Geofence 1.9.4
Geofence
- iOS 7 crash while string match for Geofence.
- Attributes set to nil are now discarded with a log.
- Deprecated
setLocationwithLat:lng:.
Modules
- Core 1.9.3
Core
- Bugfix for events lost if sync fails.
- Inbox Storyboard fix for Xcode version types.
Modules
- Inbox 1.9.1
Inbox
- Ability to delete Inbox messages by swiping.
- Fixed bug where some Inbox messages appeared blank.
Modules
- Core 1.9.0
Core
- Control logs via
[MoEngage debug:YES/NO]. - New event for notification receipt when app is active.
- Events during
resetUserare now preserved and attributed to new user.
Modules
- Core 1.8.5
Core
- Ad Support Framework is weakly linked. IDFA collected only if framework is present.
Modules
- Core 1.8.3
Core
- Duplicate symbols fix.
- NSLogs restricted to simulators.
- PushTime Swift compatibility fix.
Modules
- Core 1.8
Core
- Includes Bitcode support for iOS 9 and Xcode 7.
- Geofencing completion handler added to notify tracked regions.
- Data sync fix for terminate immediately after background.
Modules
- Core 1.7
Core
- Multiple nudges supported (expire-and-show-next).
- Reinstall event tracking.
- Open-source Inbox/Notification center.
- New callback for
UserNotificationSettings(iOS 8).
Modules
- Core 1.6
Core
- Geofencing is now supported.
- In-app images are now cached.
- Nudge view fix where action was not tracked.
Modules
- Core 1.5
Core
- Install/Update differentiation.
- Reset user triggered on MoEngage APP ID change.
Modules
- Core 1.4.3
Core
- Fixed Apple recognization of
NSFoundationVersionNumber_iOS_7_0to fix iOS 6 behavior on iOS 7.
Modules
- Core 1.4.2
Core
- iOS 6 support for tracking and pushes only.
- Property to disable badge number control.
Modules
- Core 1.4.1
Core
- iPad support for in-apps, landscape, and portrait.
- The ability to call initialize later in the lifecycle of the app.
- JSON parsing handled for incompatible types like NSData, NSUrl etc.
- iOS 6 crash handled if initialize call was skipped.