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: January 25, 2018
- Fixed an issue in Conversations where margins were cutting of some of the text when using a custom font.
Release Date: December 12, 2017
- Includes updates required for Locations SDK 2.0. For more information, see the Locations SDK Release Notes.
- Fixed a bug in version 4.11.4 where the optional functions in
SwrvePushResponseDelegatewere causing crashes if not both implemented.
Release Date: November 16, 2017
- All interaction with the Swrve SDK, including initialization, is via a new class called SwrveSDK. For more information, see the iOS SDK 5.0 Upgrade Guide.
- Includes refactors to safely persist data per User ID.
- With the exception of push notifications, we have changed the process to exclude optional iOS frameworks from your app. Now, rather than adding a Preprocessor Macro to exclude the framework, you must add them to include the framework in your Swrve integration. For more information, see How Do I Exclude Optional iOS Frameworks?
- Improved Conversations compatibility for the iPhone X.
- It is no longer possible to use internal Swrve.* events to trigger in-app messages or conversations.
Release Date: October 6, 2017
- Fixed an issue affecting devices running iOS 10 or later where the UNNotificationCenter delegate was not set when the app starts.
- Fixed an issue affecting devices running iOS 10 or later where a push notification permission status of “unknown” was reported as “denied”.
- Fixed a crash related to push permission caching.
Release Date: September 20, 2017
- Added support for Carthage. For more information, see the iOS Integration Guide. If you’re moving from CocoaPods to Carthage and use preprocessor macros to exclude certain frameworks, see How Do I Exclude Optional iOS Frameworks?
- Fixed an issue affecting devices running iOS 9 or earlier where push notification engagement events were not processed correctly if the app had remote background notifications enabled.
- Fixed an issue to reset Conversation multiple choice inputs after they are displayed.
- Fixed a compilation issue with Xcode 9 header.
- Fixed a documentation issue that was causing compilation failures with CocoaPods.
Release Date: August 29, 2017
- Fixed an issue introduced in 4.11.1 where Conversations with permission request buttons were not displayed.
Release Date: August 23, 2017
- Improved thread safety in the Swrve Permissions manager, specifically around writing to and reading from the cache.
- Fixed an issue where the button text in a QA rich push notification wasn’t reflecting edits made in the campaign workflow.
Release Date: August 16, 2017
- Added support for rich notifications that you can create and send directly in the Swrve dashboard. For more information, see About Rich Push Notifications.
- Expanded influenced logic to all push notification metrics reporting using an iOS service extension (was previously only included in silent notifications). For more information, see Managing Push Notifications.
- The SDK now includes a new API that enables you to extract resource A/B test campaign information. For more information, see How Do I Get Resource A/B Test Information from the Swrve SDK?
- Made the following improvements to overall SDK performance:
- Fixed potential memory leaks associated with Conversations font styles.
- Ensured all UIApplication calls are called from main thread as recommended by Apple.
- Fixed an issue where external deeplinks were slow to open.
- The SDK now uses the iOS 10 UserNotifications.framework for registration and push notification responses.
- Fixed an issue where height and width parameters for Conversations got mixed up.
- Fixed an issue where joined A/B test parameters were not populating due to an invalid timestamp being sent to the backend.
- Fixed an issue for Conversations targeted at users who have not enabled push permission.
- Fixed a threading issue discovered when writing the event buffer to JSON.
Release Date: August 1, 2017
- Added new user property
Swrve.permission.ios.push_bg_refreshto track permission of background app refresh setting.
- Fixed a bug around existing user property
Swrve.permission.ios.push_notificationsthat broke with the iOS SDK 4.10 silent push notification release. On iOS 10+, this value is now accurately taken from UNNotificationsettings. However, this value cannot be accurately read on iOS 8 or 9, so UIUsernotificationsettings is used instead.
Release Date: July 4, 2017
- Fixed an issue with userUpdateDate on iOS 8.4 where the locale caused an incorrect format if locale en_US_POSIX was not set.
Release Date: May 24, 2017
- Added support for using silent push notifications to send background app content updates.
Release Date: April 25, 2017
- Fixed an issue where the SDK was sending session information when started from a background mode (locations, silent push).
Release Date: April 11, 2017
- Fixed an issue in the SwrveConfig where push notification permission status showed as DENIED even though a push token was successfully received and registered.
- Deprecated the SWRVE_NO_PUSH flag and fixed an issue where app lifecycle methods were ignored if the SWRVE_NO_PUSH build flag was used to exclude push privileges.
Release Date: March 21, 2017
- The SDK now supports a minimum OS version of iOS 8. However, it works on apps running iOS 6 or 7 as a dummy implementation only.
- Improvements to thread safety.
- Fixed an issue with the notification permission status check.
- Fixed an issue with star rating layouts.
- Fixed an issue to ensure Conversations with unknown content are not displayed.
- Fixed an issue with videos not playing properly.
- Fixed an issue with images not displaying properly when switching device orientation from portrait to landscape.
Release Date: January 26, 2017
- Conversations now include support for uploading custom or brand-specific fonts and using advanced text styling and spacing options.
- Added CoreText framework dependency.
- Fixed alignment of Conversations star rating icons.
Release Date: December 13, 2016
- Improved the Swrve SDK support for iOS apps building with a high Data Protection entitlement. If you plan to enable the Data Protection capability in your app, Swrve recommends upgrading to SDK 4.7.1 as Location-Based campaigns will not operate correctly without it.
- Improved offline event handling support.
- Fixed issue for recording location impression events when device is locked or offline.
Release Date: November 24, 2016
- To support date-typed user property targeting, the SDK now enables you to send NSDate objects as part of your user updates using the following function:
userUpdate:(NSString *)name withDate:(NSDate *) dateFor more information, see the iOS Integration Guide.
- It is now possible to send your own push engagement event to Swrve using the following function:
- The number of warnings in Xcode from older versions of the iOS SDK have been reduced.
maxConcurrentDownloadsSwrveConfig property has been deprecated.
- Fixed an issue where user updates were being sent with the same seqnum.
- Fixed an issue where the SDK was not sending the correct value for
- Fixed an issue that caused the SDK to crash if a non-NSString payload attribute was used to trigger a campaign.
- Fixed an issue where the callback of iOS9+ HTTP requests were not executed in the main thread.
Release Date: November 3, 2016
- Fixed an issue where Conversations were not fully checking if all image assets were downloaded before showing the Conversation.
Release Date: October 13, 2016
- To prevent rejection by the App Store, added a feature flag to remove the Photo Camera Access API for users who don’t use photo camera access. For more information, see How Do I Exclude Optional iOS Frameworks?
Release Date: August 31, 2016
- The SDK now uses HTTPS by default for all endpoints.
- The Samples directory now contains a Swift example of the Message Center.
.podspec‘s now use exact (instead of loose) dependencies.
- Fixed in-app message rotation bug on iOS 7.
- Conversation resource images have been reduced in size,
@3xversions have been added and they are now stored in an
Release Date: August 18, 2016
- Moved appropriate frameworks out of Required and into Optional to prevent iOS 7 and iOS 8 compatibility issues when using Swift. For more information, see Integrating the iOS SDK Using Swift.
- Fixed an issue with CocoaPods frameworks where the UIImages were pointing to the main bundle and not ConversationSDK.
Release Date: July 27, 2016
- Fixed an issue where the campaign state and rules were deleted by the OS in instances of a full cache. State and other persistent data is now stored in the Application Support directory.
- Fixed a sequencing issue with user update events.
Release Date: July 5, 2016
- Conversations now rotate when changing device orientation. When a Conversation is displayed with enough space (such as landscape), a configurable lightbox and borders are used. For more information, see Intro to Conversations.
- As with in-app message campaigns, it is now possible to set the priority of Conversations campaigns over others with the same triggers. A lower number means higher priority over other campaigns. For more information, see Creating Conversations.
Release Date: June 27, 2016
- Fixed an issue that could cause the app install date to be deleted if the cache folder was low on space.
Release Date: June 16, 2016
- Fixed a bug that caused Conversations not to be displayed for customers using the !use_frameworks definition in their CocoaPods definition file with iOS SDK versions 4.3, 4.3.1 and 4.4.
Release Date: May 25, 2016
- Added support for using event payload conditions to trigger in-app messages and Conversations campaigns. For more information, see Creating In-App Messages and Creating Conversations.
- Added a feature flag that strips out the Push API for users who don’t want push notifications. You can now disable push notifications completely by adding SWRVE_NO_PUSH to your compiler flags. For more information, see How Do I Disable Apple Push Notification Service?
- Improved the SDK’s handling of events when a user enables or disables push notification permissions via the device’s App Settings, as the SDK previously only reported on the initial push permission request dialog.
Release Date: May 9, 2016
- The Locations SDK now includes a dependancy on a compatible version of the Swrve iOS SDK; that is, version 4.3.1 or higher. If you try to use a pre-4.3.1 SDK with the latest Locations SDK (v1.1), the Locations SDK throws a runtime exception. For more information on integrating the Locations SDK, see Location-Based Campaigns SDK Integration.
Release Date: April 7, 2016
- Added the Star Rating survey template to conversations. For more information, see About Conversation Templates.
- Custom button style options in Conversations now include rounded corners. For more information, see Intro to Conversations.
- Internal refactoring for upcoming conversation improvements.
- Removed legacy localization files that resulted in unwanted additional language support appearing on iTunes Connect.
- Added sample code to the Demo app that shows how Message Center is integrated.
- Fixed bug around the resource listener. Thanks to skeid21 for contributing!
Release Date: February 11, 2016
- New Message Center API enables you to list conversations and/or in-app messages in the app’s inbox. For more information, see the Swrve Message Center API Guide.
- It is now possible to exclude certain frameworks that aren’t relevant to your app. For more information, see How Do I Exclude Optional iOS Frameworks?
- The SDK now allows asynchronous push notification processing. As a result, the appInBackground method has been deprecated. Thanks to bejo for contributing!
- The SDK is ready to work with the future release of Location-based Campaigns.
- Improvements to the campaign state of in-app messages so it doesn’t get overwritten when campaigns are refreshed from the server.
- Fixed storyboard loading issue when using as a framework. Thanks to danhollywells for contributing!
- Fixed an issue that caused a key/value mixup for the “id” on the message_returned event.
- Fixed how the SDK handles lastProcessedPushId when a push notification is received. Thanks to VinceBurn for contributing!
Previous Releases Summary
- December 3, 2015 – v4.1.1 – Bug fixes.
- November 30, 2015 – v4.1 – Restricted use of Swrve. namespace for custom events.
- October 9, 2015 – v4.0.5 – Bug fixes.
- October 1, 2015 – v4.0.4 – Bug fixes.
- September 17, 2015 – v4.0.3 – Increased HTTP default timeout and added support for a new UIWindow when displaying Conversations.
- August 21, 2015 – v4.0.2 – Bug fixes.
- August 18, 2015 – v4.0.1 – Added support for iOS 9 and logging device region.
- July 7, 2015 – v4.0 – Added support for Conversations and requesting device permissions.
- April 8, 2015 – v3.4 – Changed default background for in-app messages from solid black to transparent.
- January 21, 2015 – v3.3.1 – Bug fixes.
- November 11, 2014 – v3.3 – Added support for iOS 8 interactive push notifications and to log carrier information by default.
- October 21, 2014 – v3.2 – Added support for CocoaPods and random generation of UUID if no custom user ID is provided at initialization.
- September 12, 2014 – v3.1.3 – Production support for iOS 8.
- August 29, 2014 – v3.1.2 Beta – Beta support for testing devices running iOS 8 Beta 5.
- August 8, 2014 – v3.1.1 Beta – Beta support for iOS 8 push registration method.
- July 30, 2014 – v3.1 – Added support for triggering in-app messages at session start and bug fixes.
- May 30, 2014 – v3.0.2 – Bug fixes.
- May 27, 2014 – v3.0.1 – Bug fixes.
- May 15, 2014 – v3.0 – Real-time targeting enhancements.
- April 18, 2014 – v2.2.1 – Bug fixes.
- April 1, 2014 – v2.2 – Updates to iOS receipt validation process and bug fixes.
- March 4, 2014 – v2.1 – Improved processing of campaign, user resources and saved events.
- v2.0.1 – Bug fixes.
- v2.0 – Various updates to event handling and user properties.
- v1.13 – Push notification enhancements and bug fixes.
- November 12, 2013 – v1.12 – Added support for extended IAP event and bug fixes.
- October 18, 2013 – v1.11.1 – Bug fixes.
- October 16, 2013 – v1.11 – Added support for in-app messaging per campaign dismissal rules and bug fixes.
- September 18, 2013 – v1.10.1 – Bug fixes.
- September 17, 2013 – v1.10 – Added support for in-app messaging QA logging.
- August 20, 2013 – v1.9 – Added support for in-app messaging QA users.
- July 26, 2013 – v 1.8 – Added support for server side IAP validation.
- July 2nd, 2013 – v 1.7 – Added support for app store filtering in in-app messaging.
- May 8, 2013 – v1.6 – Removed UDID system calls from libReceiptVerification.multi.a library. You must use this library if submitting to Apple after May 1, 2013. This library is compatible with the v1.4 SDK.
- April 15, 2013 – v1.5 – Major update – in-app messaging added. See the iOS Integration Guide if you are upgrading.
- March 19, 2013 – v1.4 – 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.