-
Notifications
You must be signed in to change notification settings - Fork 4
HyBid Interstitial Ads
Interstitial Ads will be rendered using the HyBid SDK.
-
Ad Zone IDfrom the PubNative Publisher Dashboard
- Import
HyBidinto your class.
Swift:
import HyBidObjective-C:
#import <HyBid/HyBid.h>- Create a
HyBidInterstitialAdproperty and initialize it by passing yourAd Zone IDand also your registered view controller as theinterstitialAd's delegate (HyBidInterstitialAdDelegate).
Swift:
var interstitialAd : HyBidInterstitialAd!
self.interstitialAd = HyBidInterstitialAd(zoneID: <YOUR AD ZONE ID HERE>, andWith: self)Objective-C:
@property (nonatomic, strong) HyBidInterstitialAd *interstitialAd;
self.interstitialAd = [[HyBidInterstitialAd alloc] initWithZoneID:<YOUR AD ZONE ID HERE> andWithDelegate:self];- Use the
loadmethod to request an Ad.
Swift:
self.interstitialAd.load()Objective-C:
[self.interstitialAd load];Swift:
extension ViewController : HyBidInterstitialAdDelegate
{
func interstitialDidLoad()
{
print("Interstitial did load:")
self.interstitialAd.show()
// or alternatively you can show the interstitial ad from the specified view controller
self.interstitial.show(from: viewController)
}
func interstitialDidFailWithError(_ error: Error!)
{
print("Interstitial did fail with error: \(error.localizedDescription)")
}
func interstitialDidTrackClick()
{
print("Interstitial did track click:")
}
func interstitialDidTrackImpression()
{
print("Interstitial did track impression:")
}
func interstitialDidDismiss()
{
print("Interstitial did dismiss:")
}
}Objective-C:
#pragma mark - HyBidInterstitialAdDelegate
- (void)interstitialDidLoad
{
NSLog(@"Interstitial did load");
[self.interstitialAd show];
// or alternatively you can show the interstitial ad from the specified view controller
[self.interstitialAd showFromViewController:viewController];
}
- (void)interstitialDidFailWithError:(NSError *)error
{
NSLog(@"Interstitial did fail with error: %@",error.localizedDescription);
}
- (void)interstitialDidTrackClick
{
NSLog(@"Interstitial did track click");
}
- (void)interstitialDidTrackImpression
{
NSLog(@"Interstitial did track impression");
}
- (void)interstitialDidDismiss
{
NSLog(@"Interstitial did dismiss");
}If you don't want to show the ad right away after being loaded, you can use the
isReadyproperty that returns aBOOLstating if the ad has been loaded and is ready to be displayed.
Once the ad is loaded successfully from the server, the HyBidInterstitialAd will render it and notify when it's ready via the interstitialDidLoad callback. Any error during fetch or rendering will be received via the interstitialDidFailWithError callback.
interstitialDidTrackClick, interstitialDidTrackImpression interstitialDidDismiss and just notify of clicks, impressions and dismissal of the Interstitial. No code needs to be added there. Use those callbacks in case you want to hide the ad after click or some similar use case.
The interstitial can display two kinds of ads: HTML and Video. All video ads are considered not skippable unless the advertiser defines a position from which the ad can be skipped.
On HyBid you can set manually a minimum amount of seconds until the video ad can be skipped. If the time defined by the advertiser is higher that the one defined by the developer, then the advertiser one will be used to respect the measurement criteria.
Swift:
self.interstitialAd.setSkipOffset:10 //10 secondsObjective-C:
[self.interstitialAd setSkipOffset:10]; //10 secondsKeep in mind that this only applies to video ads.