Bidapp Ads
  • 🎁Ab_dout
  • Integration
    • iOS
      • Getting started
      • Additional Settings
      • App Policy Settings
      • Serverless Settings
      • Interstitial Ads
      • Rewarded Ads
      • Banner Ads
      • SKAdNetwork
      • SwiftUI
    • Android
      • Getting started
      • Additional Settings
      • App Policy Settings
      • Serverless Settings
      • Interstitial Ads
      • Rewarded Ads
      • Banner Ads
      • Jetpack Compose
  • PLUGINS
    • Kotlin Multiplatform
      • Getting started
      • Android Platform Setup
      • iOS Platfrom Setup
      • App Policy Settings
      • Interstitial Ads
      • Rewarded Ads
      • Banner Ads
    • Unreal Engine
      • Getting started
      • App Policy Settings
      • Interstitial Ads
      • Rewarded Ads
      • Banner Ads
      • MREC
    • Unity
      • Getting started
      • Android
      • iOS
      • App Policy Settings
      • Interstitial Ads
      • Rewarded Ads
      • Banner Ads
Powered by GitBook
On this page
  • Showing an Interstitial Ad
  • Stopping and Starting Auto-Load

Was this helpful?

  1. Integration
  2. iOS

Interstitial Ads

Interstitial Ads are loaded automatically. You can observe ad loading events by specifying the delegate:

BIDInterstitial *interstitial = [BIDInterstitial new];
interstitial.loadDelegate = loadDelegate;
let interstitial = BIDInterstitial()
interstitial.loadDelegate = loadDelegate

The delegate should implement the following methods:

#pragma mark - BIDFullscreenLoadDelegate protocol methods

- (void)didLoadAd:(BIDAdInfo*)adInfo
{
    NSLog(@"Interstitial - didLoadAd. AdInfo: %@", adView, adInfo);
}

- (void)didFailToLoadAd:(BIDAdInfo*)adInfo error:(NSError *)error
{
    NSLog(@"Interstitial - didFailToLoadAd. AdInfo: %@. Error: %@", adInfo, error);
}
//BIDFullscreenLoadDelegate protocol methods

func didLoadAd(_ adInfo: BIDAdInfo) {
    print("Interstitial - didLoadAd. AdInfo: \(adInfo)")
}
    
func didFail(toLoadAd adInfo: BIDAdInfo, error: Error) {
    print("Interstitial - didFailToLoadAd. AdInfo: \(adInfo). Error: \(error)")
}

Showing an Interstitial Ad

To show an interstitial ad, call showWithDelegate instance method of the BIDInterstitial class:

[interstitial showWithDelegate:theDelegate];
interstitial.show(with: theDelegate)

The delegate should implement the following methods:

#pragma mark - BIDInterstitialDelegate protocol mehods

//TODO: simplify this method. It should simply return the appropriate View Controller to display ad
- (UIViewController*)viewControllerForDisplayAd
{
    return viewController;
}

- (void)didDisplayAd:(BIDAdInfo*)adInfo
{
    NSLog(@"Interstitial - didDisplayAd. AdInfo: %@", adView, adInfo);
}

- (void)didClickAd:(BIDAdInfo*)adInfo
{
    NSLog(@"Interstitial - didClickAd. AdInfo: %@", adView, adInfo);
}

- (void)didHideAd:(BIDAdInfo*)adInfo
{
    NSLog(@"Interstitial - didHideAd. AdInfo: %@", adView, adInfo);
}

- (void)didFailToDisplayAd:(BIDAdInfo*)adInfo error:(NSError *)error
{
    NSLog(@"Interstitial - didFailToDisplayAd. AdInfo: %@ Error: %@", adInfo, error);
}

-(void)allNetworksDidFailToDisplayAd
{
    NSLog(@"Interstitial - allNetworksDidFailToDisplayAd");
}
//BIDInterstitialDelegate protocol mehods
    
//TODO: simplify this method. It should simply return the appropriate View Controller to display ad
func viewControllerForDisplayAd() -> UIViewController {
    return viewController;
}
    
func didDisplayAd(_ adInfo: BIDAdInfo) {
    print("Interstitial - didDisplayAd. AdInfo: \(adInfo)")
}
    
func didClickAd(_ adInfo: BIDAdInfo) {
    print("Interstitial - didClickAd. AdInfo: \(adInfo)")
}
    
func didHideAd(_ adInfo: BIDAdInfo) {
    print("Interstitial - didHideAd. AdInfo: \(adInfo)")
}
    
func didFail(toDisplayAd adInfo: BIDAdInfo, error: Error) {
    print("Interstitial - didFail toDisplayAd. AdInfo: \(adInfo). Error: \(error)")
}
    
func allNetworksDidFailToDisplayAd() {
    print("Interstitial - allNetworksDidFailToDisplayAd.")
}

Stopping and Starting Auto-Load

By default, Interstitials preload ads before any load attempt. So an Interstitial can use already preloaded ads instead of waiting on a manual load call to load new ads. To disable this feature you need to call the following method:

interstitial.autoload = NO;
interstitial.autoload = false

Once you disable autoload, you should load ads manually every time you need them to show:

[interstitial load];
interstitial.load()
PreviousServerless SettingsNextRewarded Ads

Last updated 1 year ago

Was this helpful?