Getting Started with the ironSource iOS SDK

To begin monetizing your application with the ironSource SDK 6.4 and below, follow these 3 easy steps:

  1. Add the SDK to your project
  2. Create Supersonic Instance
  3. Verify Your Integration

Before You Start

We support iOS versions 7 and up.

Step 1. Add the SDK to Your Project

Note: Note: If you are upgrading from a previous version of the ironSource SDK, you must completely remove it from your project, otherwise it will cause issues with the update. We also recommend erasing older builds from test devices and making a new build.

Disclaimer: Updating the ironSource SDK
When upgrading from older SDK versions to the ironSource SDK 6.4.11+, you must update all mediation adapters.

ironSource supports both Cocoapods and manual download mechanisms to integrate our SDK:

Integrate the SDK with CocoaPods


CocoaPods
is a dependency manager for Objective-C and Swift; it automates and simplifies the SDK integration process. See the CocoaPods Guide on Getting Started and Using CocoaPods for more information.

To integrate our SDK with Cocoapods, enter the following line in your podfile:

pod 'SupersonicSDK','~>6.4.21'

Integrate the SDK Manually

Follow these steps to add the ironSource SDK to your project:

  1. Add Supersonic Framework
    After you download the SDK; unzip it and add Supersonic.framework into your Xcode Project.
  2. Adding Required Frameworks
    Go to Targets ➣ Build Phases ➣ Link Binary With Libraries.
    Click ‘+’ to add the following frameworks:
AdSupport
AVFoundation
CoreGraphics
CoreLocation
CoreMedia
CFNetwork
CoreTelephony
CoreVideo
Foundation
libz.tbd
libxml2.tbd
MobileCoreServices
QuartzCore
SystemConfiguration
StoreKit
Security
WebKit
  • Status Bar Control
    To enable the ironSource SDK to hide the status bar (even if your app displays it),
    in your info.plist, add the View controller-based status bar appearance flag’s value and set it to NO.
  • Linker Flags
    Add the following linker flag to the build settings at:
    Target ➣ Build Settings ➣ Linking ➣ Other Linker Flags:
    ObjC
    Supersonic Add Linker Flags
    iOS9 App Transport Security settings
    Important! In iOS9, Apple has added in controls around ‘ATS’. In order to ensure uninterrupted support for Supersonic Ad delivery across all Mediation Networks, it’s important to make the following changes in your info.plist:
    • Add in a dictionary called ‘NSAppTransportSecurity‘. Make sure you add this dictionary on the ‘Top Level Key‘.
    •  Inside this dictionary, add a Boolean called ‘NSAllowsArbitraryLoads‘ and set it to YES.
      Supersonic iOS9 App Transport Security Settings
      Note:  Note:
      • Make sure that your info.plist does not contain any other exceptions besides ‘NSAllowsArbitraryLoads‘, as this might create a conflict.
      • Find more information on ATS here.

Step 2. Create Supersonic Instance

ironSource supports both Objective-C and Swift
If you are using Swift, read our Swift guidelines here before you continue on this document.

Follow these steps to create a Supersonic Instance:

  1. Import the following file:
    OBJECTIVE-C
    #import "Supersonic/Supersonic.h"
    SWIFT
    No import required with Swift.
  2. Create a Supersonic instance by calling the following method on your application start:
    OBJECTIVE-C
    [Supersonic sharedInstance];
    SWIFT
    Supersonic.sharedInstance()
  3. Optional: To receive detailed log events, you can register to the log delegate. Skip to Appendix A for more information.

Step 3. Verify Your Integration

The ironSource SDK provides an easy way to verify that your Rewarded Video Mediation integration was completed successfully. To verify your ironSource SDK integration as well as any additional Ad Networks you may have implemented, navigate to this article.

Done!
You are now ready to start working with the ironSource Ad Units and Mediation Tools.


What’s Next?

Once you’ve verified your integration with the Integration Helper, follow the integration guides and implement our Ad Units:

Interested in the ironSource Mediation platform? Integrate our Rewarded Video or Interstitial Ads and follow our Mediation articles.

Appendix A – Registering to the Log Delegate

ironSource provides a log delegate allows you to receive detailed logs inside your application. These logs are also printed to the console. If you’d like to receive these detailed logs, register to the log delegate before initializing the SDK.

OBJECTIVE-C
[[Supersonic sharedInstance] setLogDelegate:YOUR_LOG_DELEGATE];
SWIFT
Supersonic.sharedInstance().setLogDelegate(YOUR_LOG_DELEGATE)