Last modified October 2, 2019 by Gordon Glauser

iOS SDK upgrade guide

This guide provides information about how to upgrade to the latest Swrve iOS SDK. For information about the changes that have been made in each iOS SDK release, see iOS SDK release notes.

Upgrading via CocoaPods

If you’re upgrading via CocoaPods, ensure you complete the following for every upgrade:

  • Update all libraries to the latest SDK version; for example, 6.3.0.
  • Run the command pod repo update to ensure all references are up to date (for example, Geo SDK).

Version 6.3

This section provides information for upgrading to Swrve iOS SDK v6.3.

Delayed initialization and custom user ID

For information about how to configure the SDK to delay initialization and set a custom user ID for tracking purposes, see the iOS integration guide.


Version 5.3.3

There are no code changes required to upgrade to Swrve iOS SDK v5.3.3.


Version 6.2.1 and 5.3.2

If you are upgrading from a version prior to 6.0, see below. Otherwise, there are no code changes required to upgrade to Swrve iOS SDK v6.2.1 and v5.3.2.


Version 6.2

If you are upgrading from a version prior to 6.0, see below. Otherwise, there are no code changes required to upgrade to Swrve iOS SDK v6.2.


Version 6.1.4

If you are upgrading from a version prior to 6.0, see below. Otherwise, there are no code changes required to upgrade to Swrve iOS SDK v6.1.4.


Version 6.1.3

If you are upgrading from a version prior to 6.0, see below. Otherwise, there are no code changes required to upgrade to Swrve iOS SDK v6.1.3.


Version 6.1.2

If you are upgrading from a version prior to 6.0, see below. Otherwise, there are no code changes required to upgrade to Swrve iOS SDK v6.1.2.


Version 6.1.1

If you are upgrading from a version prior to 6.0, see below. Otherwise, there are no code changes required to upgrade to Swrve iOS SDK v6.1.1.


Version 6.1

If you are upgrading from a version prior to 6.0, see below. Otherwise, there are no code changes required to upgrade to Swrve iOS SDK v6.1.


Version 6.0.2

If you are upgrading from a version prior to 6.0, see below. Otherwise, there are no code changes required to upgrade to Swrve iOS SDK v6.0.2.


Version 6.0.1

If you are upgrading from a version prior to 6.0, see below. Otherwise, there are no code changes required to upgrade to Swrve iOS SDK v6.0.1.


Version 6.0

This section provides information for upgrading to Swrve iOS SDK v6.0.

Removed Summary
+(void) processNotificationResponseWithIdentifier:(NSString *)identifier andUserInfo:(NSDictionary *)userInfo; No longer applicable with minimum support set at iOS 10.
+(void)pushNotificationReceived:(NSDictionary*)userInfo; No longer applicable with minimum support set at iOS 10.
+(void) sharedInstanceWithAppID:(int)swrveAppID apiKey:(NSString*)swrveAPIKey launchOptions:(NSDictionary*)launchOptions; Removed launch options from the initilization, no longer required.
+(void) sharedInstanceWithAppID:(int)swrveAppID apiKey:(NSString*)swrveAPIKey config:(SwrveConfig*)swrveConfig launchOptions:(NSDictionary*)launchOptions; Removed launch options from the initilization, no longer required.
userId property from SwrveConfig To set a custom user ID, use our new Identify API call. For more information, see the iOS integration guide.
SWRVE_ADDRESS_BOOK
SWRVE_LOCATION
SWRVE_PHOTO_LIBRARY
SWRVE_PHOTO_CAMERA
Removed the iOS permissions-related optional framework build flags. Enable permissions by implementing the SwrvePermissionsDelegate delegate. For more information, see the iOS integration guide.
pushCategories property from SwrveConfig.h Removed support for non-iOS 10+ push categories. Use the notificationCategories property instead.
Removed configuration of HTTP from SwrveConfig The SDK now only supports HTTPS.

Authenticated push

If you want to use our new user identity authenticated push feature, ensure you configure your app to use silent notifications. For information on how to configure silent notifications, see the iOS integration guide.


Version 5.3

There are no code changes required to upgrade to Swrve iOS SDK v5.3.


Version 5.2.2

There are no code changes required to upgrade to Swrve iOS SDK v5.2.2.


Version 5.2.1

There are no code changes required to upgrade to Swrve iOS SDK v5.2.1.


Version 5.2

This section provides information for upgrading to upgrade to Swrve iOS SDK v5.2.

OTT platform support

Swrve iOS SDK 5.2 includes support for tvOS. If you install the SDK using CocoaPods, there are no extra steps. If you use Carthage or manually install the SDK, refer to the following.

  • Carthage – Ensure you’re running version 28 of Carthage or above and specify the platform as follows: Carthage update --platform tvOS.
  • Manual installation – If you are compiling your app to run on both iOS and tvOS, ensure you add the SwrveConversation-tvOS.storyboard resource to your app’s target membership in Xcode. Otherwise, exclude it to run on only iOS.

Version 5.1.1

There are no code changes required to upgrade to Swrve iOS SDK v5.1.1.


Version 5.1

There are no code changes required to upgrade to Swrve iOS SDK v5.1.


Version 5.0

This section provides information for upgrading to upgrade to Swrve iOS SDK v5.0.

New SwrveSDK Class and internal refactors

All interaction with the Swrve SDK is now done through a new class called SwrveSDK and we have also completed other refactoring to ensure internal consistency. For information on upgrading to version 5.0, see the iOS SDK 5.0 Upgrade Guide.

Optional iOS frameworks

We have changed the process for excluding optional iOS frameworks in your app code. With the exception of push notifications, they are now excluded by default, and you must add the related Preprocessor Macros if you want to include the framework. For more information, see How Do I Exclude Optional iOS Frameworks?


Previous versions

If you are upgrading from a version older than 5.0, please refer to the iOS SDK 5.0 Upgrade Guide and iOS Integration Guide.