Install the BaltoSDK in an iOS App

Balto supports OS, iOS 9.0 or later. 

Swift 3 and Objective-C are also supported.

This page will guide you through installing the BaltoSDK, activating as well as details on how to embed the details.

Installing the BaltoSDK

Installing with Carthage

Add the following codes to Cartfile.

github "goodpatch/BaltoSDK"

Installing with CocoaPods

Add the following codes to Podfile.

target 'TargetName' do
  pod 'BaltoSDK', '>= 4.0.0'

Installing Manually

Refer to the  iOS SDK download page in GitHub to download the iOS BaltoSDK.

  1. From the top of the Web dashboard, click where it says, Download SDK.
  2. A modal window will appear. Click Download iOS SDK to download the latest version of the SDK.
  3. Launch Xcode and head to Project > General > Embedded Binaries and drag and drop the BaltoSDK.framework that you downloaded.

Get Set Up

Activate the BaltoSDK that you've installed.

  1. Open your Xcode project (If you are using CocoaPods, open Xcode workspace).
  2. From Xcode go to Project > BuildPhases and add Run Script.
  3. Add the following code to Run Script:
    /bin/sh "${PROJECT_DIR}/BaltoSDK.framework/"
    # If you are using CocoaPods
    /bin/sh "${SRCROOT}/Pods/BaltoSDK/BaltoSDK.framework/"
    # If you are using Carthage
    /bin/sh "${SRCROOT}/Carthage/Build/iOS/BaltoSDK.framework/"


Embed the following codes to AppDelegate.swift.

import BaltoSDK

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    return true
For BaltoSDK versions 3.1.3 and before, please embed the following code. Version 4.0.0 and later will not need to embed this code.
func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {
    Balto.returnFromBalto(openURL: url, options: options)
    return true

Change the feedback gesture

You can also change the feedback gesture in Balto. To do this, include the following code into Balto.with().

// Custom swipe gesture
Balto.withCustomSwipe(numberOfTouchesRequired: Int, direction: UISwipeGestureRecognizerDirection)

// Long press hold gesture (The default time is 0.5seconds)

// Custom long press hold gesture
Balto.withLongPress(minimumPressDuration: CFTimeInterval)

Hide the feedback button

By default, the feedback button will be displayed. If you'd like to hide the feedback button, embed the code from below. 

Balto.with(options: [kBaltoHideMenu: true])
Balto.withLongPress(minimumPressDuration: 2.0, options: [kBaltoHideMenu: true])
Balto.withCustomSwipe(numberOfTouchesRequired: 2, direction: .down, options: [kBaltoHideMenu: true])

If you prefer to hide the feedback button for certain screens but keep it visible on others, use the following codes from below.

For an Objective-C Project

BaltoSDK is written in Swift. 

If your project is in Objective-C, follow the steps below.  

Xcode > Project > Build Settings > Build Options and where it says, Always Embed Swift Standard Libraries, select YES

Device Management

It is the responsibility of the developer to make sure that the device management to test your app in Balto has been successfully set up. 

For Ad-Hoc Provisioning Profiles
- Add the UDID for each test device in the provisioning profile

For Enterprise Provisioning Profiles
- Ensure the reviewer goes to their Settings to trust the developer

The reviewers will be able to install your app via Balto only if the above details have been met. 

For more information, please refer to the Apple iOS Developer Library.

Other important points

  • Balto supports OS, iOS 9.0 or later
  • Swift 3.0.1 or later and Objective-C are also supported
  • You cannot upload an .ipa file that does not have the BaltoSDK installed
  • An .ipa file cannot be uploaded more than once
  • The Balto app must be installed in your app in order to give and send feedback

The Japanese version of this article can be found here:

Still need help? Contact Us Contact Us