Smartlook

Android

iOS

React Native

Flutter

Ionic

Cordova

Unity

Unreal Engine

Cocos

Xamarin

Web
SDK Installation
AndroidiOSCocosCordovaFlutterIonicReact NativeUnityUnreal Engine 4Xamarin
SDK Conceptual
SDK API reference
SDK Cookbooks
SDK Integrations
REST API (beta)

iOS SDK Installation

Installation

There are three ways to integrate Smartlook into your app:

1. Swift Package Manager

Add this Swift Package https://github.com/smartlook/SmartlookSwiftPackage.

If you experience "Found an unexpected Mach-O header code: 0x72613c2" error when uploading archived app to App Store, please follow this guide.

2. Direct integration

Smartlook can be also added directly to the app project by downloading our latest Smartlook iOS SDK (1.7.1), unzipping the file and adding Smartlook.xcframework to the Xcode project.

3. Cocoapods

In projects that use Cocoapods, Smartlook can be installed by adding the respective pod into Podfile:

pod Smartlook

Please note that due to Cocoapods own limitations, Smartlook integrated via Cocoapods cannot be used in simulators on arm64 MacBooks. If this is your case, we recommend switching to Swift Packages Manager as described above.

Setup and Start Recording

To setup and start recording with Smartlook, Smartlook must be imported and configured e.g., in AppDelegate and its didFinishLaunching method:

swiftobjective-c
import Smartlook
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let smartlookConfig = Smartlook.SetupConfiguration(key: "API_KEY")
Smartlook.setupAndStartRecording(configuration: smartlookConfig)
// other initialization stuff
return true
}

To setup Smartlook, the unique project API key is needed. It can be found in the mobile project settings in Smartlook Dashboard.

Smartlook now starts recording the app. The recordings will appear in the Smartlook player shortly.

When starting in debug mode, your iOS app may stop for a few seconds after is starts and print a warning when Smartlook is included.
It is caused by Xcode's Main Thread Checker diagnostics. Read more about why it happens and how to handle it in this Technical Note.

SDK will upload sessions only on WiFi. When uploading on mobile connections is requested, too, it must be enabled in the project settings in the dashboard. More details about the recording process can be found in the Conceptual documentation.

Supported versions

Current minimal supported iOS version is 10.

Further Steps

All methods of Smartlook SDK are documented in the Smartlook API reference.

Some advanced use-case and troubleshooting case-studies are described in the Cookbooks section of this documentation.

Issues and bugs can be reported in the Smartlook issue tracker.

Concepts undelying the Smartlook functionality are descibed in the Conceptual documentation: