Load Ads
Creating Interstitial & Rewarded Ads
To show an ad, create a variable to hold a reference to either the Interstitial or Rewarded Mediation Ad:
var interstitialAd: HeliumInterstitialAd?
var rewardedAd: HeliumRewardedAd?
@property (nonatomic) id<HeliumInterstialAd> interstitialAd;
@property (nonatomic) id<HeliumRewardedAd> rewardedAd;
Using the Placement Name you set up on your dashboard, get an instance of a Mediation Ad with the following:
self.interstitialAd = Helium.shared().interstitialAdProvider(with: self, andPlacementName: "MYMEDIATIONPLACEMENT1")
self.rewardedAd = Helium.shared().rewardedAdProvider(with: self, andPlacementName: "MYMEDIATIONPLACEMENT2")
self.interstitialAd = [[HeliumSdk sharedHelium] interstitialAdProviderWithDelegate:self andPlacementName:@"MYMEDIATIONPLACEMENT1"];
self.rewardedAd = [[HeliumSdk sharedHelium] rewardedAdProviderWithDelegate:self andPlacementName:@"MYMEDIATIONPLACEMENT2"];
Loading Interstitial & Rewarded Ads
To create an instance for each Placement Name you want to use, make the following call to load the ad:
interstitialAd?.load()
rewardedAd?.load()
[self.interstitialAd loadAd];
[self.rewardedAd loadAd];
You can implement CHBHeliumInterstitialAdDelegate
or CHBHeliumRewardedAdDelegate
in your class to receive notifications about the success or failure of the ad loading process. See iOS Delegate Usage for more details.
Creating Banner Ads
To show a banner ad, declare a variable to hold a reference to the Banner Mediation Ad and supply the corresponding Placement Name and Banner Size.
var bannerAd: HeliumBannerView?
@property (nonatomic) MediationBannerView *bannerAd;
Banner Enum | Dimensions (Width x Height) |
---|---|
Standard | (320 x 50) |
Medium | (300 x 250) |
Leaderboard | (728 x 90) |
/*
The following Banner enum Sizes can be passed down:
.standard
.medium
.leaderboard
*/
/// Mediation banner ad instance must be retained for the lifetime of the ad.
var bannerAd: HeliumBannerView?
if bannerAd == nil {
let bannerSize = CHBHBannerSize.standard
self.bannerAd = Helium.shared().bannerProvider(with: self, andPlacementName: "MY_BANNER_PLACEMENT", andSize: bannerSize)
}
/*
The following Banner enum Sizes can be passed down:
CHBHBannerSize_Standard
CHBHBannerSize_Medium
CHBHBannerSize_Leaderboard
*/
/// Helium banner ad instance must be retained for the lifetime of the ad.
@property (nonatomic, strong) HeliumBannerView *bannerAd;
if (self.bannerAd == nil) {
CHBHBannerSize bannerSize = CHBHBannerSize_Standard;
self.bannerAd = [HeliumSdk.sharedHelium bannerProviderWithDelegate:self andPlacementName:@"MY_BANNER_PLACEMENT" andSize:bannerSize];
}
Loading Banner Ads
To create an instance for each Placement Name you want to use make the following call to load the ad:
if let bannerAd = bannerAd {
bannerAd.load(with: viewControllerForModalContent)
}
if (self.bannerAd != nil) {
[self.bannerAd loadAdWithViewController:viewControllerForModalContent];
}
Clearing Loaded Ads
Clearing loaded ads may be necessary on existing placements to request another ad (i.e. for an in-house programmatic auction).
Clearing Interstitial and Rewarded Ads
interstitialAd?.clearLoadedAd()
rewardedAd?.clearLoadedAd()
[self.interstitialAd clearLoadedAd];
[self.rewardedAd clearLoadedAd];
Clearing Banner Ads
This will clear the currently displayed ad and any cached ad loaded for an auto refresh.
bannerAd?.clear()
[self.bannerAd clearAd];
Updated 4 months ago