Update the Connect iOS library

There are three ways to update the Connect library integrated into your native iOS app.

If you added the Connect library as a Swift Package, you can update it in the following way.

  1. Under Package Dependencies, right-click (or Control-click) on the Connect package.
  2. Select Update Package from the context menu.

If Update Package resolves to an older version than you expected, your project's Dependency Rule is likely excluding newer versions. For example, projects originally configured for Connect iOS SDK 1.x typically have a rule like "Up to Next Major Version" with the range 1.0.6 < 2.0.0, which prevents the package from updating to any 2.x version.

To change which version of the Connect library your project uses:

  1. Select your project file in Project Navigator.
  2. In the editor, select your project under PROJECT (not a target).
  3. On the Package Dependencies tab, change the dependency rule.
  4. Go to File > Packages > Update to Latest Package Versions.

📘

Note

For the list of available versions, see Release notes for mobile Connect SDKs.

Updating to Connect iOS SDK 2.1.15 (July 2026)

In SDK 2.1.15, we completed the Tealeaf and EOCore consolidation for Carthage users. If you use the Carthage dependency manager, follow these steps before upgrading. Swift Package Manager and CocoaPods were updated in April 2026 — no further changes are required.

  1. Remove the separate Tealeaf and EOCore binary lines from your Cartfile:
# Remove these two lines:
binary "https://raw.githubusercontent.com/go-acoustic/EOCore/master/EOCoreDebug.json"
binary "https://raw.githubusercontent.com/go-acoustic/Tealeaf/master/TealeafDebug.json"
  1. In Xcode, go to General > Frameworks, Libraries, and Embedded Content and remove Tealeaf.xcframework and EOCore.xcframework.

  2. Remove any import EOCore and import Tealeaf statements from your Swift source files. import Connect is sufficient from this version onwards.

  3. Run carthage update.

Upgrading to Connect iOS SDK 2.0.8 (April 2026)

In April 2026, we introduced a new generation of the Connect SDK with structural updates and improvements to behavior analytics for all iOS apps, and push notification support for Swift and SwiftUI apps.

Swift and SwiftUI apps

  1. Update the SDK to version 2.0.8.
  2. If you use Swift Package Manager or CocoaPods, remove the EOCore and Tealeaf imports after upgrading. The import Connect statement is sufficient. If you use Carthage, keep all three imports — the separate frameworks are still required at this version.
  3. Choose an upgrade path for your SDK initialization:
    • Updated API — switch to ConnectSDK.shared.enable(with: ConnectConfig(...)). Required if you are enabling push notifications; otherwise recommended but not required.
    • Minimal upgrade — keep the legacy ConnectApplicationHelper API. The old API continues to work in SDK 2.0.8.

Apply this change in whichever file currently holds your enableFramework(...) call.

import Connect
import EOCore
import Tealeaf
import UIKit

class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil
    ) -> Bool {
        let connectApplicationHelperObj = ConnectApplicationHelper()
        connectApplicationHelperObj.enableFramework("YOUR_APP_KEY", withPostMessageUrl: "YOUR_COLLECTOR_URL")
        return true
    }
}
import Connect
import UIKit

final class AppDelegate: NSObject, UIApplicationDelegate {
    func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil
    ) -> Bool {
        ConnectSDK.shared.enable(
            with: ConnectConfig(
                appKey: "YOUR_APP_KEY",
                postURL: "YOUR_COLLECTOR_URL"
            )
        )
        return true
    }
}
import Connect
import UIKit

class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil
    ) -> Bool {
        let connectApplicationHelperObj = ConnectApplicationHelper()
        connectApplicationHelperObj.enableFramework("YOUR_APP_KEY", withPostMessageUrl: "YOUR_COLLECTOR_URL")
        return true
    }
}

Objective-C apps

If you have integrated the Connect SDK using Swift Package Manager or Carthage, replace the legacy TLFApplicationHelper initialization call with ConnectApplicationHelper after upgrading. In some configurations, the SDK may not find its configuration files if this step is skipped.

@import Tealeaf;
@import Connect;

[[TLFApplicationHelper sharedInstance] enableTealeafFramework:@"YOUR_APP_KEY"
                                            withPostMessageUrl:@"YOUR_COLLECTOR_URL"];
@import Tealeaf;
@import Connect;

[[ConnectApplicationHelper sharedInstance] enableFramework:@"YOUR_APP_KEY"
                                         withPostMessageUrl:@"YOUR_COLLECTOR_URL"];

Push notifications are not supported for Objective-C apps.

Enable push notifications

Push notifications are supported in SDK 2.0.8. Two requirements:

  • Your SDK initialization uses the updated API path above (ConnectSDK.shared.enable(with: ConnectConfig(...))). Push is not supported on the minimal upgrade path.
  • Your app key is from a Mobile app integration in Connect. Older Web and mobile integrations created before our April 2026 release do not support push notifications. If you have one of these, your Connect administrator must create a new Mobile app integration and send you the new app key.

For end-to-end push setup, see Enable push notifications in a native iOS app.