Last modified July 28, 2021 by Shelly Wolfe

iOS SDK release notes

Swrve has an open source SDK repository. There are three options for downloading the latest public Swrve iOS SDK:

  • If using CocoaPods, add pod 'SwrveSDK' to your Podfile. The Swrve SDK is automatically downloaded and added to your project.
  • Download the SDK from the GitHub public repository.
  • Download a .zip file of the latest iOS SDK.

For upgrade instructions, see iOS SDK upgrade guide. To view the feature support matrix, see SDK feature support matrix.

Release 7.2.0

Release date: Oct 21, 2021


  • Added a new API called userResourcesDiffWithListener, which is similar to the existing userResourcesDiff API except it now uses a new callback listener that contains more information about where the result came from and any errors encountered. We’ve deprecated the existing userResourcesDiff API and will remove it in the next major version.

  • Release 7.1.0

    Release date: July 28, 2021


    • Added a new API called stopTracking that stops the SDK from tracking a user’s activity and sending events until you call the identify or start API. For more information, see the iOS integration guide.
    • Included personalization properties in the EmbeddedCallback and streamlined the process of applying personalization to message data. For more information, see Embedded campaigns personalization.


    • Fixed an issue where push delivery events were not sending for background notifications.
    • Fixed an issue where Swrve logs were not showing unless the device logging level was set in SwrveLogger. The default state is now WARNING.

    Release 7.0.3

    Release date: July 6, 2021


    • Fixed missing file and duplicate file errors when using CocoaPods use_frameworks! with a service extension that uses SwrveSDKCommon.

    Release 7.0.2

    Release date: June 10, 2021


    • Fixed an issue with image personalization validation that incorrectly caused an image without a fallback value to display.

    Release 7.0.1

    Release date: June 8, 2021


    • Fixed an issue where the QA device logs might not display on app startup if the campaigns downloaded to the device included an embedded campaign.
    • Fixed an issue where default realtime user properties were not included in the personalization properties of Message Center campaigns.

    Release 7.0.0

    Release date: May 31, 2021


    • Added permission requests to in-app message button actions. Use this option to initiate an app permission request (for example, push notifications, camera, or location access) as the button action.
    • Updated in-app message personalization to include realtime user properties by default.
    • Added support for in-app message image personalization.
    • Renamed the ManagedModeAutoStartLastUser configuration in SwrveConfig to AutoStartLastUser and made it available to use to delay activity tracking until a user is identified. For more information, see the iOS integration guide.
    • Moved to XCFramework for building .frameworks.
    • Added a new configurable log level that can be set at any time using [SwrveLogger setLogLevel:]. Supported log levels are: NONE, ERROR, WARNING, and VERBOSE.
    • Increased the minimum iOS compilation version to iOS 9.0.
    • Removed install button custom listener.
    • Removed the deprecated SWRVE_NO_PUSH macro.
    • Removed SWRVE_LOG_IDFA macro. Use the new public API [SwrveSDK idfa:] to set the IDFA after the user has given their permission.
    • Removed SWRVE_LOG_IDFV macro. Use the new config value config.autoCollectIDFV = true to auto-collect the IDFV.
    • Added SwrveDeeplinkDelegate to allow overriding SwrveSDK internal processing of deeplinks that use the openURL:options:completionHandler: API, which is not compatible with universal links.


    • Fixed an issue with Swift Package Manager integration with reference to incorrect umbrella header.

    Release 6.8.1

    Release date: February 18, 2021


    • Fixed a threading issue with QA logging that might prevent the SDK from sending logs if kicked off from a background thread.
    • Fixed an issue with in-app messages where associated campaign details might return nil when using onDismiss, onClipboard or onCustom callbacks.
    • Fixed a compilation issue found in the Xcode 12.5 beta.

    Release 6.8.0

    Release date: December 14, 2020


    • Added the ability to use Swrve triggering for your own application UI. For more information, see the iOS integration guide.
    • Added support for Swift Package Manager. For more information, see the iOS integration guide.


    • Fixed a threading issue that could cause a crash if queuing events while calling the Identity API.

    Release 6.7.1

    Release date: December 1, 2020


    • Fixed an issue where push notification custom buttons might not display the first time a user was sent a notification.

    Release 6.7.0

    Release date: October 16, 2020


    • Updated tracking of device OS and type for platform-specific delivery of in-app messages.


    • Fixed permission delegate callback for Photos and Locations.
    • Change to auto collecting IDFA for iOS 14+. This will require user permission in a future iOS release.

    Release 6.6.2

    Release date: October 7, 2020


    • Fixed an issue with in-app message button QA logging.

    Release 6.6.1

    Release date: October 6, 2020


    • Fixed an issue where the SDK wasn’t sending campaign influenced events if an app was hard closed and restarted.

    Release 6.6.0

    Release date: August 17, 2020


    • We’ve made several upgrades to the QA user feature, with richer logs now available in the QA user logging screen. QA log event showing event source and status Some highlights are:
      • Events display immediately in the QA user logging screen.
      • Event Source indicates the current progress of events from the SDK through to the Swrve servers.
      • A User Segment log displays details for all segments that user belongs to.
      • Alignment with Android QA logs for consistency (Android SDK v7.2.0).
      If your SDK integration uses the Identity API or a custom user ID, and you’re using both an old and new version of the SDK across different devices, once a QA user migrates to this version of the SDK, any logs sent from a device running an older version of the SDK will not display in the QA user logs. We recommend upgrading all of your devices to the latest version of the SDK.


    • Fixed deprecated warnings.

    Release 6.5.4

    Release date: August 6, 2020


    • Fixed an issue where Conversation campaigns would show a black screen before displaying.
    • Fixed a Conversations issue where the answer text of some survey options would appear truncated.

    Release 6.5.3

    Release date: July 6, 2020


    • Fixed an issue with QA logging for Swrve Geo where SwrveGeoSDK could not read local data if a device was locked and the app was running in the background.
    • Fixed an issue with user property updates not being sent correctly in some instances when using the Identity API.

    Release 6.5.2

    Release date: June 23, 2020


    • Fixed an issue where Conversation campaigns included in a message center would show a black screen before displaying.
    • Fixed an issue where Conversations were not displaying in the correct height on iPads.
    • Fixed an issue that might cause the app to crash when using the Identify method to switch between users.

    Release 6.5.1

    Release date: June 8, 2020


    • Fixed an issue that caused the SDK to crash when receiving a background notification from third party push provider.

    Release 6.5.0

    Release date: May 14, 2020


    • Mark Message Center campaigns as seen programmatically.


    • Made performance improvements to dynamic text rendering code.
    • Fixed an issue where some Geo SDK events were not appearing in the QA User Logs.

    Release 6.4.2

    Release date: April 8, 2020


    • Fixed an issue with tvOS where Conversations were incorrectly triggered, resulting in an overlay appearing on screen.

    Release 6.4.1

    Release date: March 25, 2020


    • Fixed an issue where the message delegate and button listeners did not reset when calling the Identify API.

    Release 6.4.0

    Release date: March 10, 2020


    • Swrve now automatically tracks and logs when push notifications are delivered and displayed on each device. This data will be used to drive campaign reports, retargeting, and exports. For more information, see the iOS integration guide.


    • Fixed an issue that prevented Conversation Push Opt-In campaigns from displaying for apps using provisional authorization for push notifications.
    • Fixed an issue that could prevent Conversations from displaying when using a full SwiftUI project.
    • Fixed an issue that caused the install date to be incorrect when using the Japanese calendar.
    • To prevent possible memory loss, changed delegate references from retain to weak.

    Release 6.3.1

    Release date: February 19, 2020


    • Added support for the CocoaPods generate_multiple_pod_projects installation option.

    Release 5.3.3

    Release date: October 3, 2019


    • Fixed a bug introduced in v5.3.2 that caused custom fonts in Conversations to not display correctly.
    • Fixed a bug introduced in v5.3.2 that caused spacing issues in some Conversations.
    • Fix duplicate assets car issue when building with CocoaPods.

    Release 6.3.0

    Release date: October 2, 2019


    • Added configuration options for delaying the start of the SDK and setting a custom user ID for tracking purposes. For more information, see the iOS integration guide.
    • Added new SwrveConfig property for hiding the status bar in Conversations. See property prefersConversationsStatusBarHidden.


    • Fixed an issue where custom buttons in push notifications wouldn’t display if there was no media URL.
    • Fixed a bug introduced in v6.2.1 that caused custom fonts in Conversations to not display correctly.
    • Fixed a bug introduced in v6.2.1 that caused spacing issues in some Conversations.
    • Fix duplicate assets car issue when building with CocoaPods.

    Previous releases summary

    Date Version Features and Fixes
    September 12, 2019 6.2.1 5.3.2 With Apple’s deprecation of the UIWebView API, migrated to the recommended WKWebView to prevent issues with submitting your app to the App Store.
    July 31, 2019 6.2.0 Added support for Swrve GeoSDK plugin v2.3, which supports geo notification cooldown periods. Also includes support for adding geoplace opening hours via CSV upload or the Geoplace API.
    July 16, 2019 5.3.1 5.X series hotfix for backward compatibility.
    July 4, 2019 6.1.4 Bug fixes.
    June 13, 2019 6.1.3 Bug fixes.
    May 21, 2019 6.1.2 Bug fixes.
    May 9, 2019 6.1.1 Bug fixes.
    April 5, 2019 6.1.0 Added support for iOS 12 Provisional Authorization for push and for Swrve Geo SDK plugin v2.2.
    February 8, 2019 6.0.2 Set UIWindow level priority for Conversation windows and fixed issue with background alignment of Conversations on iPhone X.
    December 18, 2018 6.0.1 Improvements to Swrve Geo SDK performance and various bug fixes.
    October 21, 2018 6.0.0 Added an API for handling User Identity. Removed permissions handling code, support for iOS 8 and 9, and support for deprecated Locations campaigns.
    September 3, 2018 5.3.0 Added support for linking push notifications to in-app campaigns and Swrve Geo SDK 2.0. Various refactors and improvements to how Notifications are built.
    April 4, 2018 5.2.2 Bug fixes.
    March 13, 2018 5.2.1 Bug fixes.
    March 5, 2018 5.2.0 Added support for OTT platforms. You can integrate the Swrve SDK into tvOS to do tracking, resource A/B testing and in-app messages.
    January 25, 2018 5.1.1 Bug fixes.
    December 12, 2017 5.1.0 Updates to Locations SDK and bug fixes.
    November 16, 2017 5.0.0 Refactors and addition of a new SwrveSDK class. Updates to iOS frameworks process.
    October 6, 2017 4.11.4 Bug fixes.
    September 20, 2017 4.11.3 Added support for Carthage and bug fixes.
    August 29, 2017 4.11.2 Bug fixes.
    August 23, 2017 4.11.1 Improved thread safety in the Swrve Permissions manager and bug fixes.
    August 16, 2017 4.11.0 Several push notification enhancements, including support for creating rich notifications directly in Swrve and influenced metrics reporting. Also a new API for extracting resource A/B test campaign information.
    August 1, 2017 4.10.2 Added new user property to track permission of background app refresh setting and bug fixes.
    July 4, 2017 4.10.1 Bug fixes.
    May 24, 2017 4.10.0 Added support for using silent push notifications to send background app content updates.
    April 25, 2017 4.9.2 Bug fixes.
    April 11, 2017 4.9.1 Deprecated the SWRVE_NO_PUSH flag and bug fixes.
    March 21, 2017 4.9.0 Updated minimum OS support to iOS 8 and bug fixes.
    January 26, 2017 4.8.0 Various Conversation enhancements and fixes, including custom fonts and styling.
    December 13, 2016 4.7.1 Improved the Swrve SDK support for iOS apps building with a high Data Protection entitlement.
    November 24, 2016 4.7.0 Added support for using date-type user properties to target your campaign audiences and for sending your own push engagement event.
    November 3, 2016 4.6.2 Bug fixes.
    October 13, 2016 4.6.1 Added a feature flag to remove the Photo Camera Access API for users who don’t use photo camera access.
    August 31, 2016 4.6.0 SDK now uses HTTPS by default for all endpoints.
    August 18, 2016 4.5.2 Moved relevant frameworks out of Required and into Optional to prevent iOS 7 and iOS 8 compatibility issues when using Swift.
    July 27, 2016 4.5.1 Bug fixes.
    July 5, 2016 4.5.0 Conversations enhancements.
    June 27, 2016 4.4.2 Bug fixes.
    June 16, 2016 4.4.1 Bug fixes.
    May 25, 2016 4.4.0 Added support for using event payload conditions to trigger in-app messages and Conversations campaigns.
    May 9, 2016 4.3.1 Added dependancy to Locations SDK v1.1 on Swrve iOS SDK v4.3.1 or higher.
    April 7, 2016 4.3.0 Added Star Rating survey template to Conversations.
    February 11, 2016 4.2.0 Added Message Center API and ability to exclude optional iOS frameworks.
    December 3, 2015 4.1.1 Bug fixes.
    November 30, 2015 4.1.0 Restricted use of Swrve. namespace for custom events.
    October 9, 2015 4.0.5 Bug fixes.
    October 1, 2015 4.0.4 Bug fixes.
    September 17, 2015 4.0.3 Increased HTTP default timeout and added support for a new UIWindow when displaying Conversations.
    August 21, 2015 4.0.2 Bug fixes.
    August 18, 2015 4.0.1 Added support for iOS 9 and logging device region.
    July 7, 2015 4.0.0 Added support for Conversations and requesting device permissions.
    April 8, 2015 3.4.0 Changed default background for in-app messages from solid black to transparent.
    January 21, 2015 3.3.1 Bug fixes.
    November 11, 2014 3.3.0 Added support for iOS 8 interactive push notifications and to log carrier information by default.
    October 21, 2014 3.2.0 Added support for CocoaPods and random generation of UUID if no custom user ID is provided at initialization.
    September 12, 2014 3.1.3 Production support for iOS 8.
    August 29, 2014 3.1.2 Beta support for testing devices running iOS 8 Beta 5.
    August 8, 2014 3.1.1 Beta support for iOS 8 push registration method.
    July 30, 2014 3.1.0 Added support for triggering in-app messages at session start and bug fixes.
    May 30, 2014 3.0.2 Bug fixes.
    May 27, 2014 3.0.1 Bug fixes.
    May 15, 2014 3.0.0 Real-time targeting enhancements.
    April 18, 2014 2.2.1 Bug fixes.
    April 1, 2014 2.2.0 Updates to iOS receipt validation process and bug fixes.
    March 4, 2014 2.1.0 Improved processing of campaign, user resources and saved events.
    2.0.1 Bug fixes.
    2.0.0 Various updates to event handling and user properties.
    1.13.0 Push notification enhancements and bug fixes.
    November 12, 2013 1.12.0 Added support for extended IAP event and bug fixes.
    October 18, 2013 1.11.1 Bug fixes.
    October 16, 2013 1.11.0 Added support for in-app messaging per campaign dismissal rules and bug fixes.
    September 18, 2013 1.10.1 Bug fixes.
    September 17, 2013 1.10.0 Added support for in-app messaging QA logging.
    August 20, 2013 1.9.0 Added support for in-app messaging QA users.
    July 26, 2013 1.8.0 Added support for server side IAP validation.
    July 2, 2013 1.7.0 Added support for app store filtering in in-app messaging.
    May 8, 2013 1.6.0 Removed UDID system calls from libReceiptVerification.multi.a library.
    April 15, 2013 1.5.0 Added in-app messaging.
    March 19, 2013 1.4.0 Added client-side IAP validation and third-party ID tracking.
    November 8, 2012 Fix bug where user_resources call returned incorrect results when called with no network connection.
    November 2, 2012 Add user_resources call (in parallel to user_resources_diff).
    August 24, 2012 Fixing a small timestamp bug effecting session length and playtime.
    April 17, 2012 Add support for joined field to A/B Test call in iOS SDK.
    December 1, 2011 Adding currency_given API support.
    September 30, 2011 First public release.