facebook

ConsoliAds IOS Mediation Integration (For v.14.1.x & above)

Getting Started

This documentation will help you integrate ConsoliAds IOS Mediation to get instant access to the best ad networks around the globe for optimized mobile ad analytics and earnings. 

In case you are updating to v14.x.x from older versions of ConsoliAds, please see section ‘Updating from Older Versions’ and proceed to ‘Ready to Code’

Before you proceed to integrate, make sure you have:

Updating from Older Versions

NOTE: You can skip this step if you are integrating ConsoliAds plugin for the first time

The apps details of the versions older than 13.x.x & 14.x.x appear on the ConsoliAds dashboard as follows:

Once you develop on the latest version and run your build on the DEV mode, your ConsoliAds dashboard will be updated to the latest mediation features as follows:

Mandatory steps to follow

Before starting to develop on ConsoliAds iOS Mediation 14.x.x, please make sure to:

  1. Completely clean already integrated ConsoliAds: completely remove Consoliads SDK relevant files in the libs folder.
  2. Go through the 13.x.x complete documentation: thoroughly read the new documentation as a lot has been changed to faster implement the new level of ease

Please note that you will be able to add placeholders as per the SDK ENUMs once the dashboard is updated.

Create an App

NOTE: You can skip this step if you’ve already created your app on ConsoliAds dashboard

  1. From the left sidebar, navigate to Apps-> New App
  2. Simply import your Live app or manually enter the required information and proceed to ‘Finish’ to instantly create your app

Download iOS SDK

  1. Download the latest ConsoliAds iOS SDK required from  https://portal.consoliads.com/download/sdk

Setting Up Project Dependencies

Importing iOS Mediation

There are two ways to import the mediation into your project either via CocoaPods or by manually placing files in the root of the project.  

CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-SDK', '~>13.1.4’
pod 'ConsoliAds-Analytics', '~>1.2.1’
pod 'ConsoliAds-Mediation-Adapter', '~>13.1.4’
pod 'ConsoliAds-Mediation', '~>14.1.1’

//If you need to run in app campaigns for your app. You need to add the following iap sdk dependency.

pod 'ConsoliAds-IAP', '1.1.4'

Then from the command line run:

pod install --repo-update

Requirements to work with iOS SDK

  • Xcode version should be 12.5 or higher.
  • Deployment target should be greater than or equal to 10.

NOTE: Please note that the ads DO NOT run on simulators, hence a mobile device is required

Settings to work with iOS SDK

In your project’s target settings goto Build Settings and:

  • set “Enable Bitcode” to ‘No’ in Build Options
  • add “–ObjC” flag for “Other linker flags” in Linking
  • set “Enable Modules (C and Objective-C)” to ‘Yes’ in Apple Clang – Language – Modules
  • set “Enable Objective-C Exceptions” to ‘Yes’ in Apple Clang – Language – Objective-C

In your project’s target settings goto Build Phases and:

  • Add the following libraries to Link Binary With Libraries:
    • libc++.1.tbd
    • libsqlite3.0.tbd

Preparing for iOS 14

IDFA Permission from User

To display the App Tracking Transparency authorization request for accessing the IDFA, in your project settings goto Info and add a Key in “Custom iOS Target Properties” as:

  • Name: Privacy – Tracking Usage Description
  • Type: String
  • Value: This identifier will be used to deliver personalized ads to you.

The usage description appears as part of the App Tracking Transparency dialog in your app as shown below:

Note: Before submitting your application to review on appStore, you need to make sure to add the following in your ‘App Privacy’ section.

SKAdNetwork Framework

The following ad networks support conversion tracking using Apple’s SKAdNetwork framework to attribute an app install even when IDFA is unavailable.

Ad Network Name Ad Network ID XML Formate
ConsoliAds 38p88w956s.skadnetwork View XML 
Admob cstr6suwn9.skadnetwork View XML 
Adcolony 4PFYVQ9L8R.skadnetwork View XML 
IronSource SU67R6K2V3.skadnetwork View XML 
UnityAds 4DZT52R2T5.skadnetwork View XML 
Tapjoy ECPZ2SRF59.skadnetwork View XML 
Chartboost f38h382jlk.skadnetwork View XML 
Vungle GTA9LK7P23.skadnetwork View XML 
Mintegral KBD757YWX3.skadnetwork View XML 
Facebook v9wttpbfk9.skadnetwork

n38lu8286q.skadnetwork

View XML 
Mopub 7953jerfzd.skadnetwork

SKAdNetworkIdentifier

      7953jerfzd.skadnetwork

    

Kidoz v79kvwwj4g.skadnetwork

SKAdNetworkIdentifier

      v79kvwwj4g.skadnetwork

    

 

Applovin ludvb6z3bs.skadnetwork

SKAdNetworkIdentifier

      ludvb6z3bs.skadnetwork

    

 

INMOBI wzmmz9fp6w.skadnetwork

SKAdNetworkIdentifier

      wzmmz9fp6w.skadnetwork

    

 

StartApp

 

5l3tpt7t6e.skadnetwork

 

      SKAdNetworkIdentifier

      5l3tpt7t6e.skadnetwork

    

 

 

In your project settings goto Info and add a Key in “Custom iOS Target Properties” as:

  • Name: SKAdNetworkItems
  • Type: Array

Then add item for the array as follows:

  • Name:
  • Type: Dictionary

Having the following item Key:

  • Name: SKAdNetworkIdentifier
  • Type: String
  • Value:

An example of the added value can be seen as follows:

** Your project settings should be ready to support ConsoliAds in your iOS code to add all the ad placements for all supported ad formats **

Ready to Code

SDK Initialization

Import and register ‘ConsoliAdsMediationDelegate’ delegate before initializing the SDK in order to receive initialization event:

[[ConsoliAdsMediation sharedInstance]setDelegate:yourMediationInitDelegate];

isDevMode: when true, it simulates the development environment and prevents developers from changing Live app settings. Complete app development should be done with ‘Dev Mode’ ON. When an app is ready to be published, ‘Dev Mode’ MUST BE turned OFF. (NOTE: Don’t forget to see ‘More About Dev Mode’ section before making the final build).

userConsent: TRUE if user agrees to share his data and opts for personalized ads, FALSE otherwise. This flag is used for GDPR and CCPA compliance both. 

viewController: Reference of the active view controller.

userSignature: string to identify the user according to his role and rights provided on the ConsoliAds dashboard

  1. The user signature can be obtained by going to your Personal Info by clicking on your name in the right corner of the top bar on your dashboard
  2. Copy the required user signature for the above initialize argument

NOTE: all initialize params cannot be modified once ConsoliAds is initialized

 

Register the ‘ConsoliAdsMediationDelegate’ delegate before initializing the SDK in order to receive initialization event to load the mediation call the following method:

The following event is fired on initialization success:

-(void) onConsoliAdsInitializationSucces:(BOOL)status;

Interstitial/Video Ad

Load Interstitial Ad

Despite having the loadInterstitial called, interstitial ad availability should be explicitly checked. Check interstitial ad availability by using the following methods:

[[ConsoliAdsMediation sharedInstance] loadInterstitial];

OR

[[ConsoliAdsMediation sharedInstance] loadInterstitial:placeholderName];

PlaceholderName: enum of the placeholder (such as Default, Activity1, Activity2) from the ‘Placeholders’ tab in your app details of the ConsoliAds dashboard. No placeholder value is required if you do not have your own placeholders added on the portal.

It is highly recommended to call LoadInterstitial as early as possible to allow videos to be pre-loaded.

NOTE: calling loadInterstitial multiple times does not results in multiple ad network requests

Check Interstitial/Video Ad Availability

Despite having the loadInterstitial called, interstitial ad availability should be explicitly checked. Check interstitial ad availability by using the following methods:

[[ConsoliAdsMediation sharedInstance] isInterstitialAvailable];

OR

[[ConsoliAdsMediation sharedInstance] isInterstitialAvailable:PlaceholderName];

PlaceholderName: enum of the placeholder (such as Default, Activity1, Activity2) from the ‘Placeholders’ tab in your app details of the ConsoliAds dashboard. No placeholder value is required if you do not have your own placeholders added.

Return value (boolean):

  • True if the ad is available
  • False if the ad is not available

NOTE: Please make sure that the placeholder is also added on the  dashboard before using

Show interstitial Ad

Showing rewarded video requires loading it beforehand. Use the following to load a rewarded ad:

OR

PlaceholderName: enum of the placeholder (such as Default, Activity1, Activity2) from the ‘Placeholders’ tab in your app details of the ConsoliAds dashboard. No placeholder value is required if you do not have your own placeholders added.

It is highly recommended to call LoadRewarded as early as possible to allow videos to be pre-loaded.

Static Interstitial Ad

To show an Image Only interstitial ad, enable the Static Interstitial option on your desired placeholder from the App Details->Placeholders & Ads section as shown below:

Note: Ad networks that support Static Interstitials will be tagged on the waterfall and will be used for ad serving accordingly.

Rewarded Video Ad

Load Rewarded Ad

Showing rewarded video requires loading it beforehand. Use the following to load a rewarded ad:

[[ConsoliAdsMediation sharedInstance] loadRewardedVideo];

OR

[[ConsoliAdsMediation sharedInstance] loadRewardedVideo:placeholderName];

PlaceholderName: enum of the placeholder (such as Default, Activity1, Activity2) from the ‘Placeholders’ tab in your app details of the ConsoliAds dashboard. No placeholder value is required if you do not have your own placeholders added.

It is highly recommended to call LoadRewarded as early as possible to allow videos to be pre-loaded.
Check Rewarded Ad Availability

Despite having the ad load called, rewarded video availability should be explicitly checked. Check rewarded video ad availability by using the following method:

[[ConsoliAdsMediation sharedInstance] isRewardedVideoAvailable];

OR

[[ConsoliAdsMediation sharedInstance] isRewardedVideoAvailable:PlaceholderName];

PlaceholderName: enum of the placeholder (such as Default, Activity1, Activity2) from the ‘Placeholders’ tab in your app details of the ConsoliAds dashboard. No placeholder value is required if you do not have your own placeholders added.

Return value (boolean):

  • True if the ad is available
  • False if the ad is not available

NOTE: Please make sure that the placeholder is also added on the  dashboard before using

Show Rewarded Video

Add the following lines of code to show a rewarded ad in your app:

[[ConsoliAdsMediation sharedInstance] showRewardedVideo: self];

OR

[[ConsoliAdsMediation sharedInstance] showRewardedVideo:placeholderName viewController:self];

PlaceholderName: enum of the placeholder (such as Default, Activity1, Activity2) from the ‘Placeholders’ tab in your app details of the ConsoliAds dashboard. No placeholder value is required if you do not have your own placeholders added.

Reward Users

In order to reward your user, a callback needs to be implemented with your lines of code to incentivize the user. ConsoliAds mediation SDK implements a single callback regardless of any ad network used.

Use the following code to attach your functions with ConsoliAds Rewarded Video Completed callback:

[[ConsoliAdsMediation sharedInstance] setRewardedAdDelegate: yourRewardedVideoDelegate];

Provide the following definition of the method to reward your users: 

- (void)onRewardedVideoAdCompleted:(PlaceholderName)placeholderName
{
// Write your code to reward your user here
}

AppOpen Ad

Load AppOpen Ad

Use the following code to load an AppOpen Ad:

[[ConsoliAdsMediation sharedInstance] loadAppOpenAds:UIInterfaceOrientationPortrait];

OR

[[ConsoliAdsMediation sharedInstance] loadAppOpenAds:UIInterfaceOrientationPortrait:placeholderName];

Note: pass your app orientation while calling loadAppOpenAds.

UIInterfaceOrientation can be ORIENTATION_PORTRAIT or ORIENTATION_LANDSCAPE

Check AppOpen Ad Availability

Despite having the ad load called, AppOpen ad availability should be explicitly checked. Check AppOpen ad availability by using the following method:

[[ConsoliAdsMediation sharedInstance] isAppOpenAdsAvailable];

OR

[[ConsoliAdsMediation sharedInstance] isAppOpenAdsAvailable:placeholderName];

PlaceholderName: enum of the placeholder (such as Default, Activity1, Activity2) from the ‘Placeholders’ tab in your app details of the ConsoliAds dashboard. No placeholder value is required if you do not have your own placeholders added.

Return value (boolean):

  • True if the ad is available
  • False if the ad is not available
Show AppOpen Ad

To show the AppOpenAds call implement the following code

[[ConsoliAdsMediation sharedInstance] showAppOpenAds:self];

OR

[[ConsoliAdsMediation sharedInstance] showAppOpenAds:placeholderName viewController:self];

Banner Ad

Creating Banner View through interface

Create a UIView for the banner on the storyboard and assign it to CAMediatedBannerView:

@property (weak, nonatomic) IBOutlet CAMediatedBannerView *bannerView;

Creating Banner View programmatically 

To show banner ads programmatically you need to first create the object of the CAMediatedBannerView as follows: 

CAMediatedBannerView *bannerView;
bannerView = [[CAMediatedBannerView alloc] init]; 
Show Banner Ad

Now use the following code to show the banner:

[[ConsoliAdsMediation sharedInstance] showBanner:bannerView viewController:self];

OR

[[ConsoliAdsMediation sharedInstance] showBanner:PlaceholderName
bannerView:bannerView viewController:self];

Custom banner

You can show custom banner by setting following property of the mediated view before the show call:

[bannerView setCustomBannerSize:CGSizeMake(width,height)]

Parameter details:

  • width: your preferred width for your banner view 
  • height: your preferred height for your banner view

Custom Banner Ad

You can show custom banner by setting following property of the mediated view before the show call:

[bannerView setCustomBannerSize:CGSizeMake(width,height)]

Parameter details:

  • width: your preferred width for your banner view 
  • height: your preferred height for your banner view

Hide Banner Ad

To hide the banner, use the following code:

[bannerView destroyBanner];

Native Ad

  • Create a custom view class of type UIView and implement the ‘CANativeAdRenderingDelegate’ protocol:
@interface MyMediatedNativeAdView
  • Create the following UI elements inside this class to get the native ad contents ready:
@property (strong, nonatomic) IBOutlet UILabel *titleLabel;

(to contain the native ad title string)

@property (strong, nonatomic) IBOutlet UILabel *bodyLabel; 

(to contain the native ad body string)

@property (strong, nonatomic) IBOutlet UILabel *advertiserTextLabel; 

(to contain the native ad advertiser string)

@property (strong, nonatomic) IBOutlet UIView *videoView; 

(to contain the native ad content View)

@property (strong, nonatomic) IBOutlet UIImageView *iconImageView; 

(to contain the native ad icon image)

@property (strong, nonatomic) IBOutlet UIButton *callToAction; 

(to contain the native ad action button)

@property (strong, nonatomic) IBOutlet UIImageView *privacyPolicyIconImageView; 

(to contain the native ad privacy policy view)

  • Implement the following methods provided by CANativeAdRenderingDelegate protocol and provide the above UI elements to load native ad contents:
(UILabel *) nativeTitleTextLabel;

(UILabel *) nativeBodyTextLabel;

(UILabel *) nativeAdvertiserTextLabel;

(UIImageView *) nativeIconImageView;

(UIView *) nativeVideoView;

(UIButton *) nativeCallToActionButton;

(UIView *) nativePrivacyInformationIconImageView;

(NSLayoutConstraint *) iconAdWidthConstraint;

Your custom view class’ implementation for native ad mediation should look like this:

@implementation MyMediatedNativeAdView
-( UILabel *) nativeTitleTextLabel
{
    return self.titleLabel;
}
-( UILabel *) nativeBodyTextLabel
{
    return self.bodyLabel;
}


@end

Show Native Ad:

Use the following code to show the native ad:

[[ConsoliAdsMediation sharedInstance] loadNativeAdInViewController:self placeholder:placeholderName delegate:self];

OR

[[ConsoliAdsMediation sharedInstance] loadNativeAdInViewController:self delegate:self];

When native ad is loaded, implement the following method to populate view with native ad contents:

-(void)onNativeAdLoaded:(CAMediatedNativeAd *)nativeAd ){
  [nativeAd registerViewForInteractionWithNativeAdView:self.nativeAdView];
}
Hide Native Ad

You can destroy native ad using the following code:

[self.nativeAdView removeFromSuperview];

self.nativeAdView = nil;
Multiple Native Ads in Tableview.

Import these headers in your Tableview controller class. 

#import "MediationNativeAdView.h"
#import "ConsoliAdsMediation.h"
#import "CAMediatedNativeAd.h"
#import "NativeAdBase.h"

Implement this delegate in you class 

@interface YouNativeAdsTableViewController ()  
- (void)onNativeAdLoaded:(CAMediatedNativeAd*)nativeAd;
- (void)onNativeAdLoadFailed;

Write the following code to load native ad.

- (void)loadNativeAd {
[[ConsoliAdsMediation sharedInstance] loadNativeAdInViewController:self placeholder:placeholderName delegate:self];
}

Write the code in following delegate method to notify your Tableview data source methods

- (void)onNativeAdLoaded:(CAMediatedNativeAd *)nativeAd {
[tableViewItems insertObject:item atIndex:index];
    [self.tableView beginUpdates];
    [self.tableView insertRowsAtIndexPaths:@[[NSIndexPath indexPathForRow:index inSection:0]] withRowAnimation:UITableViewRowAnimationAutomatic];
    [self.tableView endUpdates];
}

Write you own code and native ad TableViewCell code in to show data and native ad to the user

- (nonnull UITableViewCell *)tableView:(nonnull UITableView *)tableView cellForRowAtIndexPath:(nonnull NSIndexPath *)indexPath {       if ([tableViewItems[indexPath.row] isKindOfClass:[CAMediatedNativeAd class]]) { 
         CAMediatedNativeAd *nativeAd = (CAMediatedNativeAd*)tableViewItems[indexPath.row];
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"NativeAdCellView" forIndexPath:indexPath];
        MediationNativeAdView *nativeAdView = (MediationNativeAdView*)cell.contentView.subviews[0];
        [nativeAd registerViewForInteractionWithNativeAdView:nativeAdView];
        return cell;
    }
    else {
        // Your own implementation for Tableviewcell items
    }
}

NOTE: you need to create the model to hold the loaded native ad objects and a custom Tableviewcellview to show native ad in your tableview.

Write the following code in your controller’s viewDid load

- (void)viewDidLoad {
    [super viewDidLoad];
    tableViewItems = [NSMutableArray new];;
    [self.tableView registerNib:[UINib nibWithNibName:@"NativeAdCellView" bundle:nil] forCellReuseIdentifier:@"NativeAdCellView"];
}

NOTE: you can find the NativeAdCellView.xib to show native ads in a custom cell in our mediation sample.

Icon Ad

Add the following to create the icon ad view:

CAIconAdView *iconAdView = [[CAIconAdView alloc] init];
iconAdView.rootViewController = viewController;
[iconAdView setAnimationType:KCAAdScaleIconAnimation animationDuration:YES];
 [self.view addSubview:iconAdView];
  • KCAAdScaleIconAnimation: values available:
    – KCAAdNoIconAnimation
    – KCAAdRotationIconAnimation
    – KCAAdScaleIconAnimation
  • view: view at which you want to display icon ad
  • Pass the boolean value “YES” to enable infinite animation loop or “NO” to stop animation infinite loop
Show Icon Ad

Add the following to show icon ad:

[[ConsoliAdsMediation sharedInstance] showIconAd:PlaceholderName
 iconAdView:iconAdView delegate:self];

OR

[[ConsoliAdsMediation sharedInstance] showIconAd:iconAdView delegate:self];

** Congratulations, You are ready to build your app on to your iOS mobile device to see all the ad placements showing ads according to your Test Mode **

Hide All Ads

If you want to hide all ads, except Rewarded Ads, from your entire app, use the following technique:

[[ConsoliAdsMediation sharedInstance] hideAllAds];

NOTE: You only need to call this method once in your code to hide all ads from your app

Using More Apps URL and Support Email

  • The more app URLs and support emails are added against a particular brand
  • When an app of the respective brand is configured, the more app URLs and support emails are available for use
  • To access more apps URL, use: 
[ConsoliAdsMediation sharedInstance].asMoreAppsURL;
  • To access support email, use:
[ConsoliAdsMediation sharedInstance].supportEmail;

More About ‘Dev Mode’

  • Please note that the ‘Dev Mode’ has its own following settings to modify your app under development before impacting the LIVE app:
    • Test Mode
    • Hide All Ads
    • Ad Showing Mechanism
  • If you make your build with ‘Dev Mode’ enabled, the ad configurations from ‘Dev. Placeholder and Ads‘ tab on the dashboard would be used.
  • If you make your build with ‘Dev Mode’ disabled, the ad configurations from ‘Live Placeholder and Ads‘ tab on the dashboard would be used.
  • After adding or editing Ad IDs for Admob, Chartboost or Facebook. It is necessary to click the “Apply to Live” button to be applied on Live placeholders and ads

Applying Dev Settings to Live

In order to see the ‘Dev Mode’ settings on the ConsoliAds dashboard, open the ‘Placeholder & Ads (DEV)‘ tab in the details of your specific app as shown below:

Click ‘Apply to Live’ to apply these configurations to your live app.

NOTE: if the configurations are mistakenly applied to LIVE, you can undo by modifying the DEV configurations and applying again.

App Settings on ConsoliAds Dashboard

After successfully integrating your app with ConsoliAds SDK, following app settings can be explored on the ConsoliAds dashboard in the App Details section: 

Test Mode

By Default a new application is in Test Mode. In Test Mode only test ads are shown. Test Mode can ONLY be disabled by importing your app’s Live credentials in the Details tab.

Ad Network IDs

If you are using Admob, Facebook Audience Network or Chartboost you need to provide their Ad IDs on the dashboard in your app Ad Networks section. 

All other integrated ad networks will automatically go Live once your app’s Test Mode is disabled. 

Ad Filters

Apply all ad filters, for the integrated ad networks, with complete ease from the ConsoliAds dashboard in the Ad Filters section of the app details.

Debug Logs

If enabled, debug logs will be shown for your app in respective editors for Android and iOS.

Child Directed

Child Directed enables your application with complete COPPA compliance.

Hide Ads

All ads, except Rewarded Videos, can be completely turned OFF using Hide Ads on the dashboard.

Auto Mediation

Auto Mediation automatically optimizes your ad networks for each region and each ad format pertaining to every placeholder in your app such that you get the best eCPMs. 

We highly recommend to use Auto Mediation in order to witness instant revenue increments upto 20%

For Advance Development

More Delegate Events

ConsoliAds implements single delegate events for all Ad Networks. Following events can be used as per need:

Interstitial/Video Ad Events

Register the ‘ConsoliAdsMediationInterstitialAdDelegate’ delegate inorder to receive the interstitial ad events:

[[ConsoliAdsMediation sharedInstance] setInterstitialAdDelegate:self]
-(void) onInterstitialAdShown:(PlaceholderName)placeholderName;

-(void) onInterstitialAdClicked:(NSString *)featureId;

-(void) onInterstitialAdClosed:(PlaceholderName)placeholderName;

-(void) onInterstitialAdFailedToShow:(PlaceholderName)placeholderName;

-(void)onInterstitialAdLoaded:(PlaceholderName)placeholderName;

-(void)onInterstitialAdFailToLoad:(PlaceholderName)placeholderName;
Rewarded Video Ad Events

Register the ‘ConsoliAdsMediationRewardedAdDelegate’ delegate inorder to receive the rewarded ad events:

[[ConsoliAdsMediation sharedInstance] setRewardedAdDelegate:self]
-(void) onRewardedVideoAdLoaded:(PlaceholderName)placeholderName;

-(void) onRewardedVideoAdFailToLoad:(PlaceholderName)placeholderName;

-(void) onRewardedVideoAdShown:(PlaceholderName)placeholderName;

-(void) onRewardedVideoAdCompleted:(PlaceholderName)placeholderName;

-(void) onRewardedVideoAdClicked:(NSString *)featureId;

-(void) onRewardedVideoAdFailToShow:(PlaceholderName)placeholderName;

-(void) onRewardedVideoAdClosed:(PlaceholderName)placeholderName;
AppOpen Ad Events

Register the ‘ConsoliAdsMediationAppOpenAdDelegate’ delegate inorder to receive the rewarded ad events:

[[ConsoliAdsMediation sharedInstance] setAppOpenAdDelegate:self];
- (void)onAppOpenAdLoaded:(PlaceholderName)placeholderName;

- (void)onAppOpenAdFailToLoad:(PlaceholderName)placeholderName;

- (void)onAppOpenAdShown:(PlaceholderName)placeholderName;

- (void)onAppOpenAdClicked;

- (void)onAppOpenAdClosed:(PlaceholderName)placeholderName;

- (void)onAppOpenAdFailedToShow:(PlaceholderName)placeholderName;
Banner Ad Events

Register the ‘CAMediatedBannerAdViewDelegate’ delegate inorder to receive the rewarded ad events:

self.bannerView = [[CAMediatedBannerView alloc] init]
self.bannerView.delegate = self

-(void)onBannerAdLoaded:(CAMediatedBannerView*)bannerView;

-(void)onBannerAdLoadFailed:(CAMediatedBannerView*)bannerView;

-(void)onBannerAdClicked:(NSString *)featureId;

-(void)onBannerAdRefreshEvent;
Native Ad Events

Register the ‘CANativeAdRequestDelegate’ delegate inorder to receive the rewarded ad events:

-(void) onNativeAdLoaded:(CAMediatedNativeAd*)nativeAd;

-(void) onNativeAdLoadFailed;

-(void) onNativeAdClicked:(NSString *)featureId;

-(void) onNativeAdShown;

-(void) onNativeAdFailToShow;

-(void) onNativeAdClosed
Icon Ad Events

Register the ‘ConsoliAdsMediationIconAdDelegate’ delegate inorder to receive the rewarded ad events:

-(void) onIconAdShownEvent;

-(void) onIconAdFailedToShownEvent;

-(void) onIconAdRefreshEvent;

-(void) onIconAdClosedEvent;

-(void) onIconAdClickEvent:(NSString *)featureId;

Add/Remove Ad networks

Admob

Add Admob

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds Admob SDK. And place the following files in your project:

  • libadmob-mediation.a
  • GoogleMobileAds.xcframework
  • GoogleAppMeasurement.xcframework
  • GoogleAppMeasurementIdentitySupport.xcframework
  • PromisesObjC.xcframework 
  • GoogleUtilities.xcframework
  • nanopb.xcframework
  • UserMessagingPlatform.xcframework

NOTE: Please make sure to add the following key in project settings-> info:

  • Name: GADApplicationIdentifier 
  • Type: String
  • Value:
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Admob-Adapter', '~>9.9.0-v14.1.1'

pod 'Google-Mobile-Ads-SDK' , '~> 9.9.0'

Then from the command line run:

pod install --repo-update
Remove Admob

Please remove the following files from you project:

  • libadmob-mediation.a
  • GoogleMobileAds.xcframework
  • GoogleAppMeasurement.xcframework
  • GoogleAppMeasurementIdentitySupport.xcframework
  • PromisesObjC.xcframework 
  • GoogleUtilities.xcframework
  • nanopb.xcframework
  • UserMessagingPlatform.xcframework

Unity Ads

Add Unity Ads

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds UnityAds SDK. And place the following files in your project:

  • libunityads-mediation.a
  • UnityAds.xcframework
Remove Unity Ads

Please remove the following files from you project:

  • libunityads-mediation.a
  • UnityAds.xcframework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-UnityAds-Adapter', '~>4.4.0-v14.1.1'

pod 'UnityAds', '~> 4.4.0'

Then from the command line run:

pod install --repo-update

AdColony

Add AdColony

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds AdColony SDK. And place the following files in your project:

  • libadcolony-mediation.a
  • AdColony.xcframework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-AdColony-Adapter', '~>4.9.0-v14.1.1'

pod 'AdColony', '~> 4.9.0'

Then from the command line run:

pod install --repo-update
Remove AdColony

Please remove the following files from your project:

  • libadcolony-mediation.a
  • AdColony.xcframework

Chartboost

Add Chartboost

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds Chartboost SDK. And place the following files in your project:

  • libchartboost-mediation.a
  • Chartboost.xcframework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Chartboost-Adapter', '~>8.4.2-v14.1.0'

pod 'ChartboostSDK', '~> 8.4.2'

Then from the command line run:

pod install --repo-update
Remove Chartboost

Please remove the following files from your project:

  • libchartboost-mediation.a
  • Chartboost.xcframework

IronSource

Add IronSource

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds IronSource SDK. And place the following files in your project:

  • libironsource-mediation.a
  • IronSource.xcframework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-IronSource-Adapter', '~>7.2.4.0-v14.1.0'

pod 'IronSourceSDK', '~>7.2.4.0'

Then from the command line run:

pod install --repo-update
Remove IronSource

Please remove the following files from you project:

  • libironsource-mediation.a 
  • IronSource.xcframework

Applovin

Add Applovin

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds Applovin SDK. And place the following files in your project:

  • libapplovin-mediation.a
  • AppLovinSDK.xcframework
  • AppLovinSDKResources.bundle
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-AppLovin-Adapter', '~>11.4.3-v14.1.0'

pod 'AppLovinSDK', '~> 11.4.3'

Then from the command line run:

pod install --repo-update
Remove Applovin

Please remove the following files from you project:

  • libapplovin-mediation.a
  • AppLovinSDK.xcframework
  • AppLovinSDKResources.bundle

Mopub

Add Mopub

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Embed the  MoPub.xcframework  by selecting target -> build phases ->Embed Framework

Go to ConsoliAds portal and download ConsoliAds Mopub SDK. And place the following files in your project:

  • libmopub-mediation.a
  • MoPub.xcframework
Remove Mopub

Please remove the following files from you project:

  • libmopub-mediation.a
  • MoPub.xcframework

StartApp

Add StartApp 

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds StartApp SDK. And place the following files in your project:

  • libstartapp-mediation.a
  • StartApp.framework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Startapp-Adapter', '~>4.7.3-v14.1.0'

pod 'StartAppSDK', '~> 4.7.3'

Then from the command line run:

pod install --repo-update
Remove StartApp

Please remove the following files from you project:

  • libstartapp-mediation.a
  • StartApp.framework

Tapjoy

Add Tapjoy

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds Tapjoy SDK. And place the following files in your project:

  •  libtapjoy-mediation.a
  • Tapjoy.xcframework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Tapjoy-Adapter', '~>12.10.0-v14.1.0'

pod 'TapjoySDK', '~> 12.10.0'

Then from the command line run:

pod install --repo-update
Remove Tapjoy

Please remove the following files from you project:

  •  libtapjoy-mediation.a
  • Tapjoy.xcframework

Facebook

Add Facebook 

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds Facebook SDK. And place the following files in your project:

  • libfacebook-mediation.a
  • FBAudienceNetwork.xcframework
  • FBSDKCoreKit_Basics.xcframework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Facebook-Adapter', '~>6.11.2-v14.1.0'

pod 'FBAudienceNetwork', '~> 6.11.2'

Then from the command line run:

pod install --repo-update
Remove Facebook 

Please remove the following files from your project:

  •  libfacebook-mediation.a
  • FBAudienceNetwork.framework
  • FBSDKCoreKit_Basics.xcframework

Kidoz

Add Kidoz 

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds Kidoz SDK. And place the following files in your project:

  • libkidoz-mediation.a
  • KidozSDK.h 
  • libKidozSDK.a
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Kidoz-Adapter', '~> 8.9.0-1.0'

Then from the command line run:

pod install --repo-update
Remove Kidoz

Please remove the following files from your project: 

  • libkidoz-mediation.a
  • KidozSDK.h
  • libKidozSDK.a

Vungle

Add Vungle

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds Vungle SDK. And place the following files in your project:

  • libvungle-mediation.a
  • VungleSDK.xcframework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Vungle-Adapter', '~>6.12.0-v14.1.0'

pod 'VungleSDK-iOS', '~> 6.12.0'

Then from the command line run:

pod install --repo-update
Remove Vungle

Please remove the following files from you project:

  • libvungle-mediation.a
  • VungleSDK.xcframework

Mintegral

Add Mintegral 

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds Mintegral SDK. And place the following files in your project:

  • libmintegral-mediation.a
  • MTGSDKBidding.xcframework
  • MTGSDKInterActive.xcframework
  • MTGSDKNativeAdvanced.xcframework
  • MTGSDKBanner.xcframework
  • MTGSDKInterstitial.xcframework
  • MTGSDK.xcframework
  • MTGSDKSplash.xcframework
  • MTGSDKReward.xcframework
  • MTGSDKInterstitialVideo.xcframework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Mintegral-Adapter', '~>7.1.9-v14.1.0'

pod 'MintegralAdSDK/All','~> 7.1.9'

Then from the command line run:

pod install --repo-update
Remove Mintegral 

Please remove the following files from you project:

  • libmintegral-mediation.a
  • MTGSDKBidding.xcframework
  • MTGSDKInterActive.xcframework
  • MTGSDKNativeAdvanced.xcframework
  • MTGSDKBanner.xcframework
  • MTGSDKInterstitial.xcframework
  • MTGSDK.xcframework
  • MTGSDKSplash.xcframework
  • MTGSDKReward.xcframework
  • MTGSDKInterstitialVideo.xcframework

INMobi

Add InMobi

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds InMobi SDK. And place the following files in your project:

  • libinmobi-mediation.a
  • InMobiSDK.xcframework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Inmobi-Adapter', '~>10.0.8-v14.1.0'

pod 'InMobiSDK', '~> 10.0.8'

Then from the command line run:

pod install --repo-update
Remove InMobi

Please remove the following files from you project:

  • libinmobi-mediation.a
  • InMobiSDK.xcframework

Pangle

Add Pangle 

Make sure that the latest ConsoliAds Mediation SDK is integrated in your iOS project.

Go to ConsoliAds portal and download ConsoliAds Pangle SDK. And place the following files in your project:

  • BUVAAuxiliary.framework
  • BUFoundation.framework
  • BUAdSDK.framework
  • BUAdSDK.bundle

Along with that add following frameworks in Link Binary with Library in Build Settings:

  • libbz2.1.0.tbd
  • libxml2.tbd
  • Storekit.framework
  • JavascriptCore.framework
  • MediaPlayer.framework
CocoaPods

Consoliads mediation can be imported into an iOS project using CocoaPods. Open your project’s Podfile and add the following lines to your app’s target:

Once the ConsoliAds iOS Mediation is downloaded, place all the files in your project root.

pod 'ConsoliAds-Pangle-Adapter', '~>4.6.2.2-v14.1.0'

pod 'Ads-Global', '~> 4.6.2.2'

Then from the command line run:

pod install --repo-update
Remove Pangle 

Please remove the following files from you project:

  • BUVAAuxiliary.framework
  • BUFoundation.framework
  • BUAdSDK.framework
  • BUAdSDK.bundle

 

More Help Sources of Integration

ConsoliAds Sample Project:

You can download the sample project from https://portal.consoliads.com/download/iOS to see complete ConsoliAds integration already implemented for all ad formats.

Youtube Videos:

You can watch short integrations videos on your youtube channel, https://www.youtube.com/watch?v=nExp4zfb0xc, to further explore integrations with ConsoliAds.

ConsoliAds GitHub forum

If you are having any technical issues, you can visit https://github.com/teamconsoliads/sampleapp-IOS to view known issues, share problems and suggestions.

Was this article helpful?
Dislike 0