Migration from 2.0.x or 2.1.x to 2.2.2

Migration from 2.0.x or 2.1.x to 2.2.2

Migration from 3.3.0 to 3.4.0

No migration needed.

Migration from 3.2.5 to 3.3.0

Since we’ve dropped support for iOS 6, deployment target of the app using Applause SDK needs to be set to iOS 7 or higher.

Migration from 3.2.4 to 3.2.5

No migration needed.

Migration from 3.2.3 to 3.2.4

No migration needed.

Migration from 3.2.2 to 3.2.3

No migration needed.

Migration from 3.2.1 to 3.2.2

No migration needed.

Migration from 3.2.0 to 3.2.1

No migration needed.

Migration from 3.1.0 to 3.2.0

Since we’ve introduced Bitcode support for the library, to compile the app you need to update Xcode to version 7. Previous version – 3.1.0 – is the last one which supports Xcode 6.

Project Setup Migration

No migration needed.

Library Setup Migration

Integration with uTest is now disabled by default, so in case of using the default value for apps integrated with uTest platform, the value now needs to be set to YES.

Objective-C

[[APLLogger settings] setWithUTest:YES];

Swift

APLLogger.settings().withUTest = true

Migration from 3.0.1 to 3.1.0

No migration needed.

Migration from 3.0.0 to 3.0.1

For users which were affected by the bug APSDK-1944 (messages were not sent when server URL was not set), all sessions saved when running on 3.0.0 will be lost. Upgrading to 3.0.1 will send only new sessions and its messages.

Migration from 2.4.1 to 3.0.0

SDK version 3.0.0 introduced the Screen Recording and major overhaul of internals, which requires additional frameworks added to the project to work. Please also keep in mind that there’s no migration mechanism from sessions stored in 2.4.1 version of the SDK and 3.0.0. Once you’ve update to the newest version all previous data will be lost.

As of version 3.0.0 we’ve also changed deployment target of the library from iOS 5.0 to iOS 6.0.

Project Setup Migration

Cocoapods Integration

No migration needed, CocoaPods will manage all dependencies after updating SDK to the latest version.

Manual Integration

Open Xcode and in project navigator select project file of your application. From the list of targets, select your app target, and select Build Phases tab. Expand the Link Binary With Libraries tab, and press + button below Libraries list. A new window with Choose frameworks and libraries to add: title will pop up. From the list of frameworks, select and add:

  • AVFoundation.framework
  • CoreData.framework
  • CoreMedia.framework
  • MediaPlayer.framework

No further project settings changes are required at this point.

Migration from 2.4.0 to 2.4.1

No migration needed.

Migration from 2.3.0 to 2.4.0

No migration needed.

Migration from 2.2.3 to 2.3.0

No migration needed.

Migration from 2.2.2 to 2.2.3

No migration needed.

Migration from 2.0.x or 2.1.x to 2.2.2

Starting from 2.2.0, Applause SDK comes in signle binary, as opposed to two binaries for Pre-Production and Production.

Project Setup Migration

Cocoapods Integration

Replace the following entry in your Podfile:

pod 'Applause-SDK-PreProd', '~> 2.1.2'

with the entry:

pod 'Applause-SDK', '~> 2.2.2'

Save the file and re-install pods:

$ pod install

Once it’s finished the new version of the Applause SDK is integrated with your project. Move to section called Code Migration in order to finish migration.

Manual Integration

Step 1: Remove previous version of the Applause SDK

Open Xcode and project navigator find the previous version of the Applause SDK, a file called Applause-Pre-Production.framework. Select the file and delete it (either by pressing Backspace or using context menu). You will be prompted with the following question:

Do you want to move the file ‘Applause-Pre-Production.framework’€ to the Trash, or only remove the reference to it?

Select: Move to Trash.

Do the same for the Applause-Production.framework if your app was using it.

This is recommanded way of removing the old Applause SDK, rather then just deleting the file from your project. This way Xcode takes care of removing all references to the SDK from the project settings.

Step 2: Add the new Applause SDK to the project

Do this by dragging and dropping the Applause.framework folder you downloaded onto the “Frameworks” folder in your Xcode Project Navigator. The Applause framework should now be visible in Xcode just like any other framework (like theUIKit.framework, for instance).

No further project settings changes are required at this point.

Code Migration

Header Imports

Search in your project (in Xcode press Cmd + Shift + F) for:

#import <Applause-Pre-Production/APLLogger.h>

and replace it with:

#import <Applause/APLLogger.h>

This should be the only Applause SDK header import in your code. If for some reason you’ve imported other public headers you should search for Applause-Pre-Production to double check your imports.

Modes

Prior to version 2.2.0 you had to include two frameworks for Pre-Production and Production modes of Applause SDK. Now you can control the mode of the Applause SDK from your code. You can use #ifdef statement and preprocessor macro to switch between modes.

Example in Objective-C

Given you’ve added a macro to your project called APP_STORE (under Preprocessor Macros) you could do the following:

#ifdef APP_STORE
[[APLLogger settings] setMode:APLModeMarket];
#else
[[APLLogger settings] setMode:APLModeQA];
#endif
[APLLogger startNewSessionWithApplicationKey:@"Your API Key goes here"];
In Swift:

Swift code can be conditionally compiled with use of build configuration (read more at

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/InteractingWithCAPIs.html).

You can specify command line flags using -D <#flag#> in other swift flags in project settings. For example, when specified -D Debug for Debug build configuration, and respectively -D Release for Release configuration.

you could do the following:

#if Debug
APLLogger.settings().mode = APLMode.QA
#elseif Release
APLLogger.settings().mode = APLMode.Market
#endif
APLLogger.startNewSessionWithApplicationKey("Your API Key goes here")