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.
Release date: Oct 21, 2021
- Added a new API called
userResourcesDiffWithListener, which is similar to the existing
userResourcesDiffAPI 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
userResourcesDiffAPI and will remove it in the next major version.
- Added a new API called
stopTrackingthat stops the SDK from tracking a user’s activity and sending events until you call the
startAPI. For more information, see the iOS integration guide.
- Included personalization properties in the
EmbeddedCallbackand 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.
- Fixed missing file and duplicate file errors when using CocoaPods
use_frameworks!with a service extension that uses SwrveSDKCommon.
- Fixed an issue with image personalization validation that incorrectly caused an image without a fallback value to display.
- 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.
- 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
ManagedModeAutoStartLastUserconfiguration in SwrveConfig to
AutoStartLastUserand 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:
- Increased the minimum iOS compilation version to iOS 9.0.
- Removed install button custom listener.
- Removed the deprecated
SWRVE_LOG_IDFAmacro. Use the new public API
[SwrveSDK idfa:]to set the IDFA after the user has given their permission.
SWRVE_LOG_IDFVmacro. Use the new config value
config.autoCollectIDFV = trueto auto-collect the IDFV.
SwrveDeeplinkDelegateto 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.
- 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.
- 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.
- Fixed an issue where push notification custom buttons might not display the first time a user was sent a notification.
- 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.
- Fixed an issue with in-app message button QA logging.
- Fixed an issue where the SDK wasn’t sending campaign influenced events if an app was hard closed and restarted.
- We’ve made several upgrades to the QA user feature, with richer logs now available in the QA user logging screen. Some highlights are:
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.
- 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).
- Fixed deprecated warnings.
- 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.
- 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.
- 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.
- Fixed an issue that caused the SDK to crash when receiving a background notification from third party push provider.
- 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.
- Fixed an issue with tvOS where Conversations were incorrectly triggered, resulting in an overlay appearing on screen.
- Fixed an issue where the message delegate and button listeners did not reset when calling the Identify API.
- 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
- Added support for the CocoaPods
- 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.
- 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
- 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.
Release date: July 28, 2021
Release date: July 6, 2021
Release date: June 10, 2021
Release date: June 8, 2021
Release date: May 31, 2021
Release date: February 18, 2021
Release date: December 14, 2020
Release date: December 1, 2020
Release date: October 16, 2020
Release date: October 7, 2020
Release date: October 6, 2020
Release date: August 17, 2020
Release date: August 6, 2020
Release date: July 6, 2020
Release date: June 23, 2020
Release date: June 8, 2020
Release date: May 14, 2020
Release date: April 8, 2020
Release date: March 25, 2020
Release date: March 10, 2020
Release date: February 19, 2020
Release date: October 3, 2019
Release date: October 2, 2019
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.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.|