Change Log
To view the changelogs for the MobilePush SDK and our hybrid frameworks, refer to the following sections.
For information about the release process and version support, see Releases & Support.
Released November 11, 2024, correlating with the Marketing Cloud Engagement November 2024 release.
Version 8.2.1 of the Android SDK has been tested with Firebase Cloud Messaging version 23.2.1, Google Play Location Services version 21.0.1, and AltBeacon Library version 2.20.7. The minimum compatible Android API version is 21. Compiled with Android API version 35.
The SDK depends on Java version 17.
- Android 15 support
- Fix for
null
attribute applied through SFMCSdk Identity causing ClassCastException - This release includes bug fixes and SDK improvements
Released July 30, 2024, correlating with the Marketing Cloud Engagement July 2024 release.
Version 8.2.0 of the Android SDK has been tested with Firebase Cloud Messaging version 23.2.1, Google Play Location Services version 21.0.1, and AltBeacon Library version 2.20. The minimum compatible Android API version is 21. Compiled with Android API version 34.
The SDK depends on Java version 17.
- The SDK now automatically switches its encryption method to use the Android Keystore.
- Moved MD5 hashing to a new, isolated library for optional use, with an added option to forcibly remove MD5 in
MarketingCloudConfig
. - Removed the deprecated Android
LocalBroadcastManager
dependency. - Bug fixes and performance improvements.
Released February 27, 2024, correlating with the Marketing Cloud Engagement February 2024 release.
Version 8.1.5 of the Android SDK has been tested with Google Play Services version 21.0.1 and AltBeacon Library version 2.20. The minimum compatible Android API version is 21. Compiled with Android API version 34.
- Fix for
NoClassDefFoundError
– Resolved an issue where the SDK crashes while reconfiguring a running SDK if the location dependency is not present. - Bug fixes and performance improvements.
Released January 30, 2024, correlating with the Marketing Cloud Engagement January 2024 release.
Version 8.1.4 of the Android SDK has been tested with Google Play Services version 21.0.1 and AltBeacon Library version 2.20. The minimum compatible Android API version is 21. Compiled with Android API version 34.
- Fix for Receiver Not Registered – Android 14’s notification trampolining fix resulted in a rare occurence of an issue unregistering a local receiver.
Released November 9, 2023, correlating with the Marketing Cloud Engagement October 2023 release.
Version 8.1.3 of the MobilePush Android SDK has been tested with Google Play Services version 21.0.1 and AltBeacon Library version 2.20-beta1. The minimum compatible Android API version is 21. Compiled with Android API version 34.
- Fix for Proguard obfuscating classes without package name
Released October 19, 2023, correlating with the Marketing Cloud Engagement October 2023 release.
Version 8.1.2 of the MobilePush Android SDK has been tested with Google Play Services version 21.0.1 and AltBeacon Library version 2.20-beta1. The minimum compatible Android API version is 21. Compiled with Android API version 34.
- Fix for NPE when parsing URI scheme
Released October 10, 2023, correlating with the Marketing Cloud Engagement October 2023 release.
Version 8.1.1 of the MobilePush Android SDK has been tested with Google Play Services version 21.0.1 and AltBeacon Library version 2.20-beta1. The minimum compatible Android API version is 21. Compiled with Android API version 34.
- Fix for missing
requestId
property inNotificationMessage
Released October 9, 2023, correlating with the Marketing Cloud Engagement October 2023 release.
Version 8.1.0 of the Android SDK has been tested with Google Play Services version 21.0.1 and AltBeacon Library version 2.20-beta1. The minimum compatible Android API version is 21. Compiled with Android API version 34.
- Android 14 support
- Resolved NPE in
DevStats
- Resolved in-app message delay not being honored
- Introduced Runtime Toggles for Analytics, Inbox, Geofence Messaging, and Proximity Messaging
Released May 9, 2023, correlating with the Marketing Cloud Engagement May 2023 release.
Version 8.0.9 of the Android SDK has been tested with Google Play Services version 21.0.1 and AltBeacon Library version 2.19.3. The minimum compatible Android API version is 21. Compiled with Android API version 33.
- Bug fixes and performance improvements
- Play Services Location – Added support for Play Services Location versions 21 and newer
- Firebase Messaging – Added support for Firebase Messaging versions 23 and newer
- Better Foreground and Background Detection – Replaced Google’s annotation-based detection of application foreground and background
- Resolved
JSONObject
Verifier Error – A fix for theonInit
crash has been implemented. For more information, see the Google Issue Tracker.
Released January 5, 2022, correlating with the Marketing Cloud Engagement October 2022 release.
Version 8.0.8 of the Android SDK has been tested with Google Play Services version 19.0.1 and AltBeacon Library version 2.19.3. The minimum compatible Android API version is 21. Compiled with Android API version 33.
requestId
fix for analytics reporting issues- Bug fixes and performance improvements
Released September 29, 2022, correlating with the Marketing Cloud Engagement October 2022 release.
Version 8.0.7 of the Android SDK has been tested with Google Play Services version 19.0.1 and AltBeacon Library version 2.19.3. The minimum compatible Android API version is 21. Compiled with Android API version 33.
- Support for Android 13
- Support for ENS
- Support for latest Firebase Messaging
- Support for latest Beacon Messaging
- Added
redirectForAnalytics
support forRemoteNotification
- Bug fixes and performance improvements
Released May 4, 2022, correlating with the Marketing Cloud Engagement May 2022 release.
Version 8.0.6 of the Android SDK has been tested with Google Play Services version 17.1.0 and AltBeacon Library version 2.19. The minimum compatible Android API version is 21. Compiled with Android API version 31.
- Bug fixes and performance improvements
Released March 22, 2022, correlating with the Marketing Cloud Engagement March 2022 release.
Version 8.0.5 of the Android SDK has been tested with Google Play Services version 17.1.0 and AltBeacon Library version 2.19. The minimum compatible Android API version is 21. Compiled with Android API version 31.
- Bug fixes and performance improvements
Released November 22, 2021, correlating with the Marketing Cloud Engagement October 2021 release.
Version 8.0.4 of the Android SDK has been tested with Google Play Services version 17.1.0 and AltBeacon Library version 2.19. The minimum compatible Android API version is 21. Compiled with Android API version 31.
- Bug fixes and performance improvements
Released November 12, 2021, correlating with the Marketing Cloud Engagement October 2021 release.
Version 8.0.3 of the Android SDK has been tested with Google Play Services version 17.1.0 and AltBeacon Library version 2.19. The minimum compatible Android API version is 21. Compiled with Android API version 31.
- Bug fixes and performance improvements
Released November 2, 2021, correlating with the Marketing Cloud Engagement October 2021 release.
Version 8.0.2 of the Android SDK has been tested with Google Play Services version 17.1.0 and AltBeacon Library version 2.19. The minimum compatible Android API version is 21. Compiled with Android API version 31.
- Bug fixes and performance improvements
Released October 11, 2021, correlating with the Marketing Cloud Engagement October 2021 release.
Version 8.0.1 of the Android SDK has been tested with Google Play Services version 17.1.0 and AltBeacon Library version 2.19. The minimum compatible Android API version is 21. Compiled with Android API version 31.
- Bug fixes and performance improvements
- Support for Android 12
- Support for latest Firebase Messaging
- Support for latest Beacon Messaging
Released October 4, 2021, correlating with the Marketing Cloud Engagement October 2021 release.
Version 8.0.0 of the Android SDK has been tested with Google Play Services version 17.1.0 and AltBeacon Library version 2.19. The minimum compatible Android API version is 21. Compiled with Android API version 31.
This version is deprecated. Use version 8.0.1 or newer.
Released December 12, 2021, correlating with the Marketing Cloud Engagement June 2021 release.
Version 7.4.4 of the Android SDK has been tested with Google Play Services version 22.0.0 and AltBeacon Library version 2.19. The minimum compatible Android API version is 21. Compiled with Android API version 31.
- Backport of version 8’s
RejectedExecutionException
Fix
Released September 3, 2021, correlating with the Marketing Cloud Engagement June 2021 release.
Version 7.4.3 of the Android SDK has been tested with Google Play Services version 22.0.0 and AltBeacon Library version 2.19. The minimum compatible Android API version is 21. Compiled with Android API version 31.
- Android 12 Support - Backported Android 12 support from the 8.x version of the SDK
Released September 2, 2021, correlating with the Marketing Cloud Engagement June 2021 release.
Version 7.4.2 of the Android SDK has been tested with Google Play Services version 20.3.0 and AltBeacon Library version 2.17.1. The minimum compatible Android API version is 21. Compiled with Android API version 29.
- Bug fixes and performance improvements
Released June 11, 2021, correlating with the Marketing Cloud Engagement June 2021 release.
Version 7.4.1 of the Android SDK has been tested with Google Play Services version 17.1.0 and AltBeacon Library version 2.17.1. The minimum compatible Android API version is 21. Compiled with Android API version 29.
- Bug fixes and performance improvements
Released June 2, 2021, correlating with the Marketing Cloud Engagement June 2021 release.
Version 7.4.0 of the Android SDK has been tested with Google Play Services version 17.1.0 and AltBeacon Library version 2.17.1. The minimum compatible Android API version is 21. Compiled with Android API version 29.
- Bug fixes and performance improvements
Released November 25, 2020, correlating with the Marketing Cloud Engagement November 2020 release.
Version 7.3.1 of the Android SDK has been tested with Google Play Services version 21.0.0 and AltBeacon Library version 2.17.1. The minimum compatible Android API version is 21. Compiled with Android API version 29.
- Bug fixes and performance improvements
- Fixed a rare issue where the SDK could crash silently during initialization when upgrading from an old version of the SDK
- Fixed an issue where clicking a Geofence or Beacon message didn’t open the provided OpenDirect URL
- Fixed an issue where the SDK could crash when reobfuscated by the consuming mobile application
- Corrected an SDK debug log incorrectly logging as error
- Updated third-party dependencies for Google Play Services, Kotlin support, and the AltBeacon library
Released October 12, 2020, correlating with the Marketing Cloud Engagement October 2020 release.
Version 7.3.0 of the Android SDK has been tested with Google Play Services version 17.0.0 and AltBeacon Library version 2.16.4. The minimum compatible Android API version is 21. Compiled with Android API version 29.
- This release fixes the following issues.
- Crashes on Android 21 (Lollipop)
- Issues related to the FullImageFill In-App Message type on Android 23 (Marshmallow)
- Fixes a rare
IllegalAccessError
on network failure.
Released June 1, 2020, correlating with the Marketing Cloud Engagement June 2020 release.
Version 7.2.0 of the Android SDK has been tested with Google Play Services version 17.0.0 and AltBeacon Library version 2.16.4. The minimum compatible Android API version is 21. Compiled with Android API version 29.
- Bug fixes and performance improvements
Released March 23, 2020, correlating with the Marketing Cloud Engagement March 2020 release.
Version 7.1.0 of the Android SDK has been tested with Google Play Services version 17.0.0 and AltBeacon Library version 2.16.4. The minimum compatible Android API version is 21. Compiled with Android API version 29.
- Image fills for full-page in-app messages: Currently, the full-page in-app message template crops images to a 16:9 aspect ratio. With this update, images can fill a larger portion of the screen and drive engagement with your app. To support image fill for full-page in-app messages, update to the March release of the MobilePush SDK. Image fill is available to customers with MobilePush and Journey Builder.
- Bug fixes and performance improvements
Released February 24, 2020, correlating with the Marketing Cloud Engagement February 2020 release.
Version 7.0.0 of the Android SDK has been tested with Google Play Services version 17.0.0 and AltBeacon Library version 2.16.4. The minimum compatible Android API version is 21. Compiled with Android API version 29.
- Bug fixes and performance improvements
Released October 28, 2019, correlating with the Marketing Cloud Engagement October 2019 release.
Version 6.4.0 of the Android SDK has been tested with Google Play Services version 17.0.0 and AltBeacon Library version 2.16.3. The minimum compatible Android API version is 16. Compiled with Android API version 29.
- Bug fixes and performance improvements
Released September 25, 2019, correlating with the Marketing Cloud Engagement June 2019 release.
Version 6.3.5 of the Android SDK has been tested with Google Play Services version 16.0.0 and AltBeacon Library version 2.16.2. The minimum compatible Android API version is 16. Compiled with Android API version 29.
- Bug fixes and performance improvements
Released July 25, 2019 correlating with the Marketing Cloud Engagement June 2019 release.
Version 6.3.4 of the Android SDK has been tested with Google Play Services version 16.0.0 and AltBeacon Library version 2.16.2. The minimum compatible Android API version is 16. Compiled with Android API version 29.
- Android Q Support: This release of the SDK adds support for the new
ACCESS_BACKGROUND_LOCATION
permission. The changes in Android Q require that you request this permission from your users when on an Android Q device for Geofence and Beacon messaging. For more information, see Implement Location Messaging on Android. JobIntentService
bug fix: Added code to prevent an unhandled exception thrown by Google’sJobIntentService
.- Inbox message status: This release better reflects the read or deleted state of an inbox message in Engagement.
- New LearningApp: This release includes an updated, simplified, and modern sample app using the MobilePush SDK. For more information, see MobilePush SDK Android LearningApp.
Released June 25, 2019, correlating with the Marketing Cloud Engagement June 2019 release.
Version 6.3.3 of the Android SDK has been tested with Google Play Services version 16.0.0 and AltBeacon Library version 2.16.1. The minimum compatible Android API version is 16. Compiled with Android API version 28.
- Deliver in-app messages: Deliver relevant, personalized messages to your app’s users. You can now send messages without relying on users having enabled push notifications. Engaging full-screen, modal, or banner messages are presented while your users are interacting with your app. For more information, see Implement In-App Messaging on Android.
- Improved database recovery: In rare instances, the database used by the SDK becomes corrupt. To resolve any issues before initialization is complete, we added code to validate the database and its structure during initialization.
- Fixed rare system bug: Certain Android devices and versions can cause issues when modifying the message data associated with a notification’s
PendingIntent
. To avoid these issues, we changed the structure of the data stored in thePendingIntent
.
Released May 21, 2019, correlating with the Marketing Cloud Engagement April 2019 release.
Version 6.2.2 of the Android SDK has been tested with Google Play Services version 16.0.0 and AltBeacon Library version 2.16.1. The minimum compatible Android API version is 16. Compiled with Android API version 28.
- Prevent crash on Android O or newer: Some devices running Android O or newer can exhibit a bug where the SDK attempts to create a job using Android’s
JobScheduler
when there are already 100 scheduled jobs, resulting in Android throwing anIllegalStateException
. We added code to prevent this crash and improve logging when the issue occurs.
Released April 23, 2019, correlating with the Marketing Cloud Engagement April 2019 release.
Version 6.2.1 of the Android SDK has been tested with Google Play Services version 16.0.0 and AltBeacon Library version 2.16.1. The minimum compatible Android API version is 16. Compiled with Android API version 28.
- Required app endpoint (tenant-specific endpoint): To pass the SDK’s configuration, an app endpoint is now required. Find the app endpoint for your app under Administration in MobilePush. Review Configuration Requirements for details.
- Enforced critical update to Firebase Cloud Messaging for Android SDK: For your app to continue receiving messages, you must update your SDK to version 6.0.1 or later and configure your app with Firebase initialized.
- Added ability to delay registration until the contact key is set: Use a new SDK configuration value to delay registrations to Engagement until a contact key is set via setDelayRegistrationUntilContactKeyIsSet(). Review Delay Registration for details.
- Inbox messages support sendDateUtc for sorting: Inbox messages delivered to your app now include the date that the message was sent. App users can sort their inbox based on this value. For more information, see Implement Inbox Messaging on Android.
- Added ability to set read or deleted by inbox message ID only: Added convenience methods to set the status of an inbox message to read or deleted with only the message’s ID as an argument.
Released February 11, 2019, correlating with the Marketing Cloud Engagement January 2019 release.
Version 6.1.0 of the Android SDK has been tested with Google Play Services version 16.0.0 and AltBeacon Library version 2.15.2. The minimum compatible Android API version is 16. Compiled with Android API version 28.
- Implemented message segmentation: The Android SDK now supports app control over which push notifications, geofence messages, and beacon messages are displayed. Use the region information provided for geofence and beacon messages in your notification presentation logic. Review Notification Segmentation.
- Implemented predictive intelligence identifier (PIID) configuration options and APIs: You can configure the identifier for Predictive Intelligence analytics according to how you use Personalization Builder. Configure your applications to use either existing contact key data or a PI-specific identifier. For more information, see Enable and Use Analytics on Android.
- Added ability to unregister a
WhenReadyListener
passed torequestSdk
: For more information, see the reference documentation forunregisterWhenReadyListener()
.
Released December 5, 2018, correlating with the Marketing Cloud Engagement 215.1 release.
Version 6.0.2 of the Android SDK has been tested with Google Play Services version 15.0.1 and AltBeacon Library version 2.14. The minimum compatible Android API version is 16. Compiled with Android API version 27.
- Corrected a registration frequency issue in the SDK that allows for multiple registration requests to be sent to Engagement within a small amount of time. Now, registration edits are properly batched and sent one time per minute.
- Improved
SdkState
logging output to support you during debugging sessions.
Released October 22, 2018, correlating with the Marketing Cloud Engagement 215 release.
Version 6.0.2 of the Android SDK has been tested with Google Play Services version 15.0.1 and AltBeacon Library version 2.14. The minimum compatible Android API version is 16. Compiled with Android API version 27.
- Replaced GCM with FCM: We removed the deprecated Google Cloud Messaging library and replaced it with Firebase Cloud Messaging. You now must configure your application so that Firebase is initialized. For more information, see Integrate the MobilePush Android SDK.
- Simplified notification customization and handling: We've simplified the
MarketingCloudConfig.Builder
by consolidating all of the notification customization options into a singleNotificationCustomizationOptions
class. For more information, see Customize Push Notification Functionality for Android Apps. - Fewer required dependencies: The Google Play Services Location and AltBeacon dependencies are no longer declared in the SDK’s
pom.xml
file as required dependencies. If your application requires these features, follow the instructions provided in Implement Location Messaging on Android. - Improved initialization verification: To ensure that the necessary information is provided before the SDK is initialized, we've added additional checks to
MarketingCloudConfig.Builder
. These checks include ensuring that an icon resource for notifications is provided and that notification channels are handled. To allow for this change, you must update your call toMarketingCloudConfig.Builder#build(Context)
to pass in anAndroid
context. - Default notification channel: The SDK now creates a default notification channel named “Marketing”. For information on how to modify this channel, see Implement Default and Custom Notification Channels
- Removed
Attribute
class: We removed the previously deprecatedAttribute
class, along with any associated methods. Registration attributes are now provided in a key-valueMap
. - Removed
DefaultUrlPresenter
: To address potential security concerns, we removed the SDK's default URL presenter. Consequently, if your message involves redirection to a web URL, resource, file, or other custom application schema driven by business logic, you must override notification handling. For more information, see Handling URLs and Custom Keys. - Tenant-Specific Endpoint: Two new methods were added to
MarketingCloudConfig.Builder
to facilitate Tenant-Specific Endpoints:setMarketingCloudServerUrl()
andsetMid()
. These methods configure the SDK to communicate with the specific server for your application. For guidance on where to find your Tenant-Specific Endpoint and MID, see Updating Engagement Endpoints to Tenant-Specific Endpoints: FAQ. - Improved Kotlin interoperability: Addressed issues reported by the Kotlin interoperability Android lint check.
- Added nullability annotations to all public APIs.
- Reversed parameter order of MarketingCloudSdk’s
whenReady
method to make the interface eligible for SAM conversion. - Fixed region message URL locale bug: For locales that don’t use
.
as the decimal separator, the SDK requests region messages in a format that Engagement doesn't support. We corrected this issue to enforce that.
is used, regardless of device locale.
Released July 23, 2024, correlating with the Marketing Cloud Engagement July 2024 release.
- Resolved hang issues occurring during the first launch and app upgrades, resulting in improved SDK performance.
- Fixed an issue affecting Inbox Open Analytics when the Inbox Replace feature is enabled.
- Bug fixes and performance improvements.
- SFMCSDK version 1.1.3 (compatible with Push Module versions 8.1.2 and above).
Released February 27, 2024, correlating with the Marketing Cloud Engagement February 2024 release.
- Privacy Manifest – Adds a privacy manifest that declares the default data collected by the SDK as per Apple's privacy requirements for third-party SDKs. For more information, see Apple Privacy Manifest Guide.
- SFMCSDK version 1.1.2 (compatible with Push Module versions 8.1.2 and above)
Released January 18, 2024, correlating with the Marketing Cloud Engagement January 2024 release.
Version 8.1.1 of the iOS SDK requires SFMC SDK v1.0.8. The minimum compatible iOS API version is 12.
- Bug fixes and performance improvements
- Framework code signatures: Code signatures have been added to all frameworks.
- Alert + Inbox “Tap To Read”: You can now configure the SDK to mark an inbox message as “read” when a user taps the push notification for an Alert + Inbox message. For more information, see Implement Inbox Messaging on iOS.
- Eliminating iOS 11 support: As of this release, iOS 11 is no longer supported.
Released October 30, 2023, correlating with the Marketing Cloud Engagement October 2023 release.
Version 8.1.0 of the iOS SDK requires SFMC SDK v1.0.8. The minimum compatible iOS API version is 11.
- Bug fixes and performance improvements
- Runtime Toggles: Enable or disable Analytics, Inbox, Geofence Messaging, and Proximity Messaging at runtime. For more information, see Runtime Toggles.
MarketingCloudSDK.bundle
Integration: We've eliminated the need for manual addition ofMarketingCloudSDK.bundle
as an application resource, streamlining the integration process.- New API – Added an API,
requestPushSdk
, which guarantees access to the Push module when it becomes available. - MarketingCloudSDK integration via Swift Package Manager (SPM): Integration via SPM now automatically includes SFMCSDK, simplifying integration efforts.
- Improved logging for multiple push providers: Introduced enhanced log messages to warn users about multiple push providers, aiding in proactive implementation decisions.
- Initialization issues on locked devices: Fixed an issue where the SDK failed to initialize when the device was locked and no keychain or data protection was available.
- Compatibility fix for iOS 11: Addressed initialization issues specific to iOS 11, ensuring seamless integration and functionality on this platform.
- Enhanced diagnostic tooling: The MobilePush iOS SDK now detects and logs SDK implementation issues, providing guidance in the log output for smoother implementations.
Released May 3, 2023, correlating with the Marketing Cloud Engagement May 2023 release.
Version 8.0.13 of the iOS SDK requires SFMC SDK v1.0.8. The minimum compatible iOS API version is 11.
- Bug fixes and performance improvements
Released March 27, 2023, correlating with the Marketing Cloud Engagement March 2023 release.
Version 8.0.12 of the iOS SDK requires SFMC SDK v1.0.8. The minimum compatible iOS API version is 11.
- Bug fixes and performance improvements.
- Adds registration callbacks: Added the ability to pass a single callback to listen to registration events.
- Adds configurable filesystem protection types: Added the ability to configure the SDK’s protection values. For an example implementation, see the MobilePush iOS LearningApp.
- Fixes crashes due to Xcode archive overriding the default
CFBundleShortVersionString
within the framework. - Addresses crashes caused by back-to-back initializations of the SDK.
- Deprecates
tearDown
methods: The SDK now handles tear-downs internally. - Improved data merge tool performance.
Released January 24, 2023, correlating with the Marketing Cloud Engagement January 2023 release.
Version 8.0.10 of the iOS SDK requires SFMC SDK v1.0.8. The minimum compatible iOS API version is 11.
- This release includes bug fixes and SDK improvements.
This version deprecates support for iOS versions 10.0 and older, and Xcode versions 13.x and older.
Released December 7, 2022, correlating with the Marketing Cloud Engagement December 2022 release.
Version 8.0.9 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- Bug fix for push open reporting and Inbox message retrieval
Released September 29, 2022, correlating with the Marketing Cloud Engagement October 2022 release.
Version 8.0.8 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- Support for ENS
- This release includes bug fixes, SDK, and performance improvements.
Released August 18, 2022, correlating with the Marketing Cloud Engagement August 2022 release.
Version 8.0.7 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- This release includes fixes for Objective-C compatibility
- SDK data merge: This release includes a tool that facilitates the reconciliation of the dataset associated with the v7.x SDK and the current dataset for v8.x SDK users. For information, see Troubleshoot Data Merge.
Released April 14, 2022, correlating with the Marketing Cloud Engagement March 2022 release.
Version 8.0.6 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- Bug fixes and performance improvements
Released March 31, 2022, correlating with the Marketing Cloud Engagement January 2022 release.
Version 8.0.5 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- This release fixes the following issues.
- Swizzling ViewDidAppear
- Keychain crashes in iOS 15
- Adds namespacing to encryption files in SFMCSDK
- Library evolution with Xcode 12.5 as minimum Xcode compatibility
Released February 4, 2022, correlating with the Marketing Cloud Engagement January 2022 release.
Version 8.0.4 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- This release fixes the following issues.
- Open Direct URL
- Swizzling
ViewDidAppear
- Version conflict when uploaded to TestF light and similar apps
- Support for CocoaPods along with Swift Package Manager
Released January 3, 2022, correlating with the Marketing Cloud Engagement January 2022 release.
Version 8.0.3 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- This release includes fixes for the validation process (bundle collision and structure)
Released December 14, 2021, correlating with the Marketing Cloud Engagement December 2021 release.
Version 8.0.2 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- This release includes a fix for the profile attributes API
Released October 28, 2021, correlating with the Marketing Cloud Engagement October 2021 release.
Version 8.0.1 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- This release includes open attributes API and
InboxMessage
UI support fixes
Released October 14, 2021, correlating with the Marketing Cloud Engagement October 2021 release.
Version 8.0.0 of the iOS SDK requires SFMC SDK v1.0.6. The minimum compatible iOS API version is 10.
- Bug fixes and performance improvements
- Introducing Swift Packages
- Discontinuation of CocoaPods support in favor of Swift Package Manager. For guidance on migrating to SDK version 8.x, see Migrate to the Next-Gen MobilePush SDK for iOS.
Released June 2, 2021, correlating with the Marketing Cloud Engagement June 2021 release.
The minimum compatible iOS API version is 10.
- Bug fixes and performance improvements
Released May 25, 2021, correlating with the Marketing Cloud Engagement May 2021 release.
The minimum compatible iOS API version is 10.
- In App banner message bug fix: Fixes an issue where banner In-App messages crash on iOS 14.
Released March 17, 2021, correlating with the Marketing Cloud Engagement March 2021 release.
The minimum compatible iOS API version is 10.
- Packaged SDK as an XCFramework: The SDK is now packaged as an XCFramework, supporting arm64 simulators on Macs with M1 Chipsets.
Released February 11, 2021, correlating with the Marketing Cloud Engagement February 2021 release.
The minimum compatible iOS API version is 10.
- Improve Inbox Messages sync when force closing app: Improved chances of syncing inbox message status with the server for end users who force close the app.
- Bug fixes and performance improvements
Released December 22, 2020, correlating with the Marketing Cloud Engagement November 2020 release.
The minimum compatible iOS API version is 10.
- Added Support for arm64e: Explicitly added arm64e architecture to enable reading debug symbols on arm64e devices
Released November 11, 2020, correlating with the Marketing Cloud Engagement November 2020 release.
The minimum compatible iOS API version is 10.
- Fixes for rare race conditions linked to customer reported crash reports showing crash during SDK tear down following the successful deletion of data prompted by a GDPR request.
- Fix possible naming collisions with Objective-C Classes: Renamed
Event
class to minimize potential naming collisions for customers using Objective-C.
Released August 31, 2020, correlating with the Marketing Cloud Engagement June 2020 release.
The minimum compatible iOS API version is 10.
- Bug fixes and performance improvements
Released July 6, 2020, correlating with the Marketing Cloud Engagement June 2020 release.
The minimum compatible iOS API version is 10.
- Bug fixes and performance improvements
- Fixes an issue where the custom data field wasn’t present in inbox messages.
Released June 1, 2020, correlating with the Marketing Cloud Engagement June 2020 release.
The minimum compatible iOS API version is 10.
- Bug fixes and performance improvements
Released May 18, 2020, correlating with the Marketing Cloud Engagement March 2020 release.
The minimum compatible iOS API version is 10.
- Added armv7 support: We had previously removed armv7 support, restricting support to armv7s and arm64 architectures. This release provides armv7, armv7s, and arm64 support.
Released March 23, 2020, correlating with the Marketing Cloud Engagement March 2020 release.
The minimum compatible iOS API version is 10.
- Image Fill for full-page in-app messages: Currently, the full-page in-app message template crops images to a 16:9 aspect ratio. With this update, images can fill a larger portion of the screen and drive engagement with your app. To support image fill for full-page in-app messages, update to the March release of the MobilePush SDK. Image fill is available to customers with MobilePush and Journey Builder.
Released January 25, 2020, correlating with the Marketing Cloud Engagement January 2020 release.
The minimum compatible iOS API version is 10.
- JSON configuration method removal: The
sfmc_configure
andsfmc_configureWithURL
SDK configuration methods, using theMarketingCloudSDKConfiguration.json
file, have been removed. If you’re upgrading to this version of the SDK, see Integrate the MobilePush iOS SDK for an example of using ourConfigBuilder
for simple, code-based SDK configuration. - Required minimum deployment target of iOS 10.0: Existing mobile applications continue to function, without change. Mobile applications can continue to reference older SDK versions, without change. Applications that adopt the January 2020 MobilePush SDK release require a project change, if your application build still supports iOS 9.
Released December 27, 2019, correlating with the Marketing Cloud Engagement October 2019 release.
- Bug fixes and performance improvements for devices running iOS 13
Released November 22, 2019, correlating with the Marketing Cloud Engagement October 2019 release.
- Bug fixes and performance improvements
- Updated LearningApp for iOS data protection: This release includes an updated, simplified, and modern sample app using the MobilePush SDK. For more information, see the MobilePush iOS LearningApp.
Released October 28, 2019, correlating with the Marketing Cloud Engagement October 2019 release.
- JSON configuration method deprecation: The
sfmc_configure
andsfmc_configureWithURL
SDK configuration methods, using theMarketingCloudSDKConfiguration.json
file, have been deprecated. These methods will be removed in the next SDK release. If you’re upgrading to this version of the SDK, see Configure the MobilePush iOS SDK for an example of using ourConfigBuilder
. - Immediate registration after install: To more effectively establish an Engagement contact, a MobilePush registration is sent immediately following the first SDK configuration after a new app install. Subsequent registrations are deferred for up to 60 seconds, as described in Contact and Device Registration.
Released September 26, 2019, correlating with the Marketing Cloud Engagement June 2019 release.
- Bug fixes and performance improvements
- In-App message layout improvements: On iOS 13 devices, when in-app messages are displayed on an iPad in Split View modes, messages are sized appropriately.
Released July 25, 2019, correlating with the Marketing Cloud Engagement June 2019 release.
- New LearningApp for iOS: This release includes an updated, simplified, and modern sample app using the MobilePush SDK. For more information, see the MobilePush iOS LearningApp.
- Inbox message status: This release better reflects the
read
ordeleted
state of an inbox message in Engagement.
Released June 17, 2019 correlating with the Marketing Cloud Engagement June 2019 release.
- Deliver in-app messages: Deliver relevant, personalized messages to your app’s users. You can now send messages without relying on users having enabled push notifications. Engaging full-screen, modal, or banner messages are presented while your users are interacting with your app. For more information and implementation guidance, see Implement In-App Messaging on iOS.
Released May 21, 2019, correlating with the Marketing Cloud Engagement April 2019 release.
- Fixed issue with inbox start date: Inbox messages now respect
startDateUtc
payload values in all cases.
Released May 2, 2019, correlating with the Marketing Cloud Engagement April 2019 release.
- Removed SDK test code from the library: Test code associated with SDK development was removed from the public release.
- Fixed location messaging date calculation: Fixed an issue in calculating the "next show date" for location messages, where previously there may have been a discrepancy of one day.
Released April 23, 2019, correlating with the Marketing Cloud Engagement April 2019 release.
- Required app endpoint (Tenant-Specific Endpoint): Passing the SDK’s configuration now mandates an app endpoint. Locate your app's endpoint under Administration in the MobilePush UI. For guidance on where to find your Tenant-Specific Endpoint, see Updating Engagement Endpoints to Tenant-Specific Endpoints: FAQ.
- Added application badging override: A new SDK configuration value gives you full control of your app’s badge value. For more information, see Control App Badging.
- Added ability to delay registration until the contact key is set: Use a new SDK configuration value to delay registrations to Engagement until a contact key is set via
sfmc_setContactKey:
. For more information, see Delay Registrations Until Contact Key is Set. - Inbox messages support
sendDateUtc
for sorting: Inbox messages delivered to your app now include the date that the message was sent. App users can sort their inbox based on this value. For more information, see Implement Inbox Messaging on iOS. - Better tracking of "open from push" analytics: The SDK now ensures more effective capture of "open from push" analytics when the application isn't running, especially when configured asynchronously.
- Fixed an issue with the
ConfigurationBuilder
: Fixed an issue with using theConfigurationBuilder
method to configuring the SDK that may have caused an authorization error when contacting Engagement.
Released February 28, 2019, correlating with the Marketing Cloud Engagement January 2019 release.
Corrected an issue that prevented a location or proximity CloudPage+Alert
message from displaying.
Released February 11, 2019, correlating with the Marketing Cloud Engagement January 2019 release.
- Implemented location message segmentation: The SDK now supports app control over which geofence and beacon messages are displayed. Use the region information provided for geofence and beacon messages in your notification presentation logic. For details, see Location Message Segmentation.
- Implemented Predictive Intelligence Identifier (PIID) configuration options and APIs: You can configure the identifier for Predictive Intelligence analytics according to how you use Personalization Builder. Configure your applications to use either existing contact key data or a PI-specific identifier. For details, see Enable and Use Analytics on iOS
- Added time for iOS file protection transitions: To ensure iOS file protection transitions are complete before the SDK completes configuration, we added a guarding mechanism. Now, to accommodate these transitions, the SDK waits up to 5 seconds, without blocking other functions. If the UIApplication’s
isProtectedDataAvailable
returnsNO
, configuration fails. - Fixed Predictive Intelligence analytics issues: Fixed issues related to sending Predictive Intelligence analytics when using the MID configuration value.
- Fixed location messaging issue: Resolved an issue where reloading location messages from the server displayed a message limited by the display settings again, contrary to the intended message setting.
Released December 5, 2018, correlating with the Marketing Cloud Engagement 215.1 release.
- Analytics: Addressed an issue sending analytics to Predictive Intelligence when using the MID configuration value.
- Networking: Reduced the number of network calls made to Engagement servers during the lifecycle of the SDK.
Released October 22, 2018, correlating with the Marketing Cloud Engagement October 2018 release.
-
Implemented Tenant Specific Endpoint support for Engagement Accounts: New MobilePush applications must be configured with account-specific settings. For information on configuring the SDK, see Integrate the MobilePush iOS SDK
-
Removed SDK-provided web view for URLs: To address potential security concerns, we removed the SDK's default URL presenter. Consequently, if your message involves redirection to a web URL, resource, file, or other custom application schema driven by business logic, you must provide the SDK with a delegate and implementation of the MarketingCloudSDKURLHandlingDelegate protocol. For more information, see Handling URLs and Custom Keys.
-
Removed the following SDK protocols and protocol methods:
-
MarketingCloudSDKCloudPageMessagesNotificationHandlerDelegate
-
MarketingCloudSDKOpenDirectMessagesNotificationHandlerDelegate
-
MarketingCloudSDKInboxMessagesNotificationHandlerDelegate
Please change your code to implement the MarketingCloudSDKURLHandlingDelegate protocol.
-
-
Inbox functionality improvements:
- When an Alert+Inbox push notification arrives with the app in the foreground, inbox messages are reloaded from the server automatically.
- Inbox message handling better tracks “active” messages in the inbox based on their start and end date values.
-
SDK Configuration: Added the
sfmc_configureWithDictionary:
method to configure the SDK via runtime values passed to SDK.
Released August 27, 2018, correlating with the Marketing Cloud Engagement July 2018 release.
Addressed issues related to multithreading and core data concurrency.
Released July 31, 2018, correlating with the Marketing Cloud Engagement 213.1 release.
- Addressed issues related to multi-threading in the SDK
- Updated the build process to include the i386 architecture, which allows you to run 32-bit simulators
- Corrected an issue related to loading resources on armv7s devices
Released July 23rd, 2018, correlating with the Marketing Cloud Engagement April 2018 release.
- Added iOS 9 support: The iOS MarketingCloudSDK framework now supports iOS 9. Use conditional coding via Apple’s available attributes. For notes on using conditional coding for push registration and handling push notifications, see the iOS 9 documentation.
- Added synchronous configuration calls: To prevent developers from trying to set a contact key, tag, or attribute before configuration is complete, we added synchronous configuration calls to the API as the default.
- Added data privacy compliance: This version of the iOS MarketingCloudSDK supports three privacy modes that may affect your application’s use of MobilePush: Right to be Forgotten, Restriction of Processing, and Don’t Track. These changes assist you in preparing for data compliance regulations, such as the European Union’s General Data Protection Regulation (GDPR). For more information, see Data Protection and Privacy.
- Throttled inbox message calls: To match the Android SDK, we now prevent the iOS MarketingCloudSDK from calling
sfmc_refreshMessages
too often. Reference the headers for more information. - Allowed Predictive Intelligence to be set separately: When you configure the iOS MarketingCloudSDK, you can now enable or disable Predictive Intelligence separately from Analytics. If your app uses the iOS MarketingCloudSDK version 5.0.0 framework with analytics enabled, Predictive Intelligence is also enabled. To control Predictive Intelligence separately, add the
config
flag. - Improved registration: We improved registration to prevent duplicate tags and attributes.
- Fixed
isPushEnabled
override issue: Previously, disabling push notifications in the Notification Center overrode thesetPushEnable
property. We fixed this issue so that the SDK usessetPushEnable
.
Released July 11, 2018, correlating with the Marketing Cloud Engagement July 2018 release.
- Added checks to prevent exceptions: We added
nil
checks to prevent potential exceptions that could happen when users swipe to close an app. - Improved log string initializers: To help prevent Xcode Address Sanitizer warnings, we improved the SDK’s use of log string initializers.
- Device ID migration: The SDK attempts to migrate the
deviceId
from versions of JB4ASDK 4.x.x, if possible.
Released January 22, 2018, correlating with the Marketing Cloud Engagement January 2018 release.
- We redesigned the SDK to make it easier to integrate than ever before. This release includes a slimmer API that makes it easier to add Engagement features to your app. Existing users can upgrade their version to take advantage of the improved SDK. New users can follow the existing Getting Started directions to get the SDK up and running.
- We updated the SDK for full support of iOS 11.
- Fix for Open Direct link not working when app is in killed state for iOS.
- Runtime Toggles – Enable and disable Analytics and Predictive Intelligence (PI) analytics at runtime. For more information, refer to the Cordova Plugin API Reference.
- Android 14 support
- Bug fixes and performance improvements
- Android 13 support
- Integrated with the Engagement SDK, which includes support for mobile app events
- Bug fixes and performance improvements
- Uses 7.4+ versions of the Android and iOS MobilePush SDK
- Adds Behavioral Triggers for InApp messaging functionality. For more information, see
track()
.
- Uses 7.x versions of the Android and iOS MobilePush SDK
- Fix Insecure Maven URL for downloading MobilePush SDK in Android
- Uses 7.x versions of the Android and iOS MobilePush SDK.
- This plugin version requires Cordova Android 9.0.0 as the minimum version to build, which makes the minimum supported Android version as 5.1.
- Added support to enable or disable Google Play Services Plugin and change its version change in the
config.xml
file. - Added
AndroidXEnabled
preference astrue
, since the MobilePush SDK for Android depends on these support libraries.
- Updated to the 7.4.x versions of the Android and iOS MobilePush SDK.
- Fix for removing unnecessary Logcat statements on
newIntent()
flow in Android
- Updated to the 7.4.x version of the iOS MobilePush SDK.
- Updated to the 7.3.x versions of the Android and iOS MobilePush SDK.
- Updated to the 7.2.x versions of the Android and iOS MobilePush SDK.
- Updated to the 7.1.x versions of the Android and iOS MobilePush SDK.
- Updated to the 7.0.x versions of the Android and iOS MobilePush SDK.
- Updated to the 6.4.x versions of the Android and iOS MobilePush SDK.
- Added support for logging the SDK state to the native platform logging system. Uses Logcat in Android, and Console in iOS.
- Added documentation for setting up push for iOS.
- Updated to the 6.3.x versions of the Android and iOS MobilePush SDK.
- The plugin now uses CocoaPods for the iOS SDK integration.
- Support In-App Messaging functionality of the MobilePush SDK.
- Updated to the 6.2.x versions of the Android and iOS MobilePush SDK.
- Added support to delay registration until the contact key has been set. For more information, refer to step 2 in the Installation documentation.
- Require Tenant Specific Endpoint in the
config.xml
file. If a Tenant-Specific Endpoint isn’t specified, an exception is thrown.
- Updated to the 6.1.x versions of the Android and iOS MobilePush SDK.
- Added support for listening to notification opened events, enabling you to act when a user clicks a notification, such as loading the url from an OpenDirect or CloudPages message.
In this release, we have greatly simplified the Cordova plugin for our MobilePush SDK. For successful implementations, if you’re upgrading from a prior release, we suggest following the integration instructions as if you were integrating a new plugin.
All functionality of this plugin remains the same as the preceding versions.
- The plugin version number now matches with the
major
.minor
version of the SDK release. - The plugin is now published to npm for easier installation
- The JavaScript API has been updated to allow for optional parameters where applicable. For more information, see API Reference.
- Moved SDK configuration values from command-line arguments passed in while installing the SDK into the
config.xml
file.
Released July 11, 2018
For Android: Depends on Android Cordova platform 6.4.0.
- Updated Android SDK to 5.6.x
- Updated iOS SDK to 5.2.x
Released April 23, 2018
- For iOS: Depends on the MobilePush iOS SDK v5.1.x
- For Android: Depends on the MobilePush Android SDK v5.5.x, the latest version of Cordova, and Android Cordova platform 6.4.0.
- Added support for Cordova iOS cross-platform (CLI) workflow
Released January 22, 2018
-
For iOS: Depends on the MobilePush iOS SDK v4.9.x
-
For Android: Depends on the MobilePush Android SDK v5.3.x, the latest version of Cordova, and Android Cordova platform 6.4.0.
-
Updated Android SDK to v5.3.+
Released November 29, 2017
-
Depends on the MobilePush iOS SDK v4.9.x
-
Depends on the MobilePush Android SDK v5.2.x
-
Updated Android SDK to v5.2.+
Released October 27, 2017
- Depends on the MobilePush iOS SDK v4.9.x
- Depends on the MobilePush Android SDK v5.0.x
- Added APIs that support persistent Inbox and combined Alert + Inbox messaging functionality
- Bug fixes and improvements
- Depends on the 8.1.x versions of the Android and iOS MobilePush SDKs
- Initial release
- Runtime Toggles – Enable and disable Analytics and PI analytics at runtime. For more information, refer to the React Plugin API Reference.
- Android 14 support
- Bug fixes and performance improvements
- Android 13 support
- Integrated with the Engagement SDK, which includes support for mobile app events
- Bug fixes and performance improvements
- Removed unit tests from released artifact.
- Android 12 support, v7.4.3 of the Android SDK or higher is required.
- Using the 7.4.x versions of the Android MobilePush SDK.
- Using the 7.4.x versions of the Android MobilePush SDK.
- Using the 7.4.x versions of the Android MobilePush SDK.
- Using the 7.4.x versions of the iOS MobilePush SDK.
- Using the 7.3.x versions of the Android and iOS MobilePush SDK.
- Using the 7.2.x versions of the Android and iOS MobilePush SDK.
- Using the 7.1.x versions of the Android and iOS MobilePush SDK.
- Using the 7.0.x versions of the Android and iOS MobilePush SDK.
- Using the 6.4.x versions of the Android and iOS MobilePush SDK.
- Initial release
- Using the 6.3.x versions of the Android and iOS MobilePush SDK.