iOS SDK Integration
We support iOS versions 8+.
In case using XCode version lower than 9.3, we suggest archiving with ‘bitcode‘ disabled.
The download, use and access to the SDK is subject to the ironSource Mobile SDK Publisher Online Terms & Conditions. If you do not agree to the terms of ironSource Mobile SDK Publisher Online Terms & Conditions, do not download, access, or use the SDK, or the underlying services.
Starting iOS 6.8.6 SDK, ironSource SDK is iOS 13 and XCode 11 ready.
Step 1. Add the SDK to Your Project
ironSource supports both Cocoapods and manual download mechanisms to integrate our SDK:
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:
Follow these steps to add the ironSource SDK to your project:
- Download iOS SDK Version 6.10.0
After you download the SDK; unzip it and add IronSource.framework into your Xcode Project.
- Add Linker Flags
Add the following linker flag to the build settings at:
Target ➣ Build Settings ➣ Linking ➣ Other Linker Flags:
App Transport Security Settings
Important! In iOS 9, Apple added in controls around ‘ATS’. To ensure uninterrupted support for ironSource 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.
- 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.
ironSource Mediation Demo App
The Integration Demo application demonstrate how to integrate the ironSource Mediation in your app.Download iOS Demo Application
Step 2. Set The Delegates
- Import the necessary files:
Download the IronSource-Bridging-Head.h. Then, go to Targets ➣ Build Settings ➣ Objective-C Bridging Header and add the path to your bridging header file.
For Swift, find detailed instructions and download the header file here.
The ironSource SDK fires several events to inform you of your ad unit activity. To receive these events, register to the delegates of the ad units you set up on the ironSource platform.
Step 3. Initialize the ironSource SDK
Init the SDK
You can initialize the SDK in two ways.
- We recommend this approach as it will fetch the specific ad units you define in the adUnits parameter. Ad unit is a string array.
[IronSource initWithAppKey:YOUR_APP_KEY adUnits:YOUR_AD_UNITS];
[IronSource initWithAppKey:APP_KEY adUnits:@[IS_REWARDED_VIDEO]]; /** or for all ad units [IronSource initWithAppKey:APP_KEY adUnits:@[IS_REWARDED_VIDEO,IS_INTERSTITIAL,IS_OFFERWALL, IS_BANNER]];
IronSource.initWithAppKey(kAPPKEY, adUnits:[IS_REWARDED_VIDEO]; /** or for all ad units IronSource.initWithAppKey(kAPPKEY, adUnits:[IS_REWARDED_VIDEO,IS_INTERSTITIAL,IS_OFFERWALL, IS_BANNER];
When using this init approach, you can now initialize each ad unit separately at different touchpoints in your app flow in one session.
To init Rewarded Video
[IronSource initWithAppKey:APP_KEY adUnits:@[IS_REWARDED_VIDEO]];To init Interstitial
[IronSource initWithAppKey:APP_KEY adUnits:@[IS_INTERSTITIAL]];To init Offerwall
[IronSource initWithAppKey:APP_KEY adUnits:@[IS_OFFERWALL]];To init Banner
[IronSource initWithAppKey:APP_KEY adUnits:@[IS_BANNER]];
To init Rewarded Video
IronSource.initWithAppKey(kAPPKEY, adUnits:[IS_REWARDED_VIDEO];To init Interstitial
IronSource.initWithAppKey(kAPPKEY, adUnits:[IS_INTERSTITIAL];To init Offerwall
IronSource.initWithAppKey(kAPPKEY, adUnits:[IS_OFFERWALL];To init Banner
- Alternatively, you can init the SDK as detailed below and the SDK will init the ad units you’ve configured on the ironSource platform:
Step 4. Verify Your Integration
The ironSource SDK provides an easy way to verify that your SDK and Mediation integration was completed successfully. To verify your ironSource SDK integration as well as any additional ad networks you have implemented, simply add this method to your project:
For more details on the ironSource Integration Verification tool navigate to this article.
Done! You just integrated the ironSource SDK in your app.
You are now ready to start working with the ironSource Ad Units and advanced mediation platform.
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.