Banner / MREC

Display Banner Ads

To display banner ads, use one of the four available functions that start with showBanner from the code example below:

#import <Bidease/Bidease.h>

@interface ViewController : UIViewController<BideaseBannerViewDelegate,BideaseBannerDisplayDelegate>
@end

@implementation ViewController

-(void)showBanner_320x50
{
     BideaseBannerView* banner = [BDEStickyBannerView attachToView:self.view position:BIDEASEADS_BANNER_POSITION_BOTTOM edgeInsets:UIEdgeInsetsZero bannerFormat:BIDEASE_BANNER_320x50 placementId:@"Hello_ecpm_0.38" delegate:self];
     banner.refreshInterval = 20.0;
}

-(void)showBanner2_320x50
{
    BideaseBannerView* banner = [BideaseBannerView bannerWithFormat:BIDEASE_BANNER_320x50 placementId:@"Hello_ecpm_0.38"];
    banner.delegate = self;
    banner.displayDelegate = self;
    banner.refreshInterval = 20.0;
    [self.view addSubview:banner];
}

-(void)showBanner_300x250
{
     BideaseBannerView* banner = [BDEStickyBannerView attachToView:self.view position:BIDEASEADS_BANNER_POSITION_BOTTOM edgeInsets:UIEdgeInsetsZero bannerFormat:BIDEASE_BANNER_300x250 placementId:@"HelloBanner_ecpm_0.38" delegate:self];
     banner.refreshInterval = 20.0;
}

-(void)showBanner2_300x250
{
    BideaseBannerView* banner = [BideaseBannerView bannerWithFormat:BIDEASE_BANNER_300x250 placementId:@"HelloBanner_ecpm_0.38"];
    banner.delegate = self;
    banner.displayDelegate = self;
    banner.refreshInterval = 20.0;
    [self.view addSubview:banner];
}

#pragma mark - delegate methods

-(void)bideaseBannerViewDidLoadAd:(BideaseBannerView*)bideaseView
{
    NSLog(@"didLoadAd");
}

-(void)bideaseBannerView:(BideaseBannerView*)bideaseView failedToLoadAdWithError:(NSError*)error isConnectionError:(BOOL)isConnectionError
{
    NSLog(@"failedToLoadAd %@", error.localizedDescription);
}

-(void)bideaseBannerViewOnClick:(BideaseBannerView*)view error:(NSError*)error
{
    NSLog(@"click");
}

-(UIViewController*)viewControllerForPresentingModalView
{
    return self;
}

@end
import Bidease

class ViewController: UIViewController , BideaseViewDelegate {

    func showBanner_320x50() {
        let banner = BDEStickyBannerView.attach(to: self.view, position: BIDEASEADS_BANNER_POSITION_BOTTOM, edgeInsets: .zero, bannerFormat: BIDEASE_BANNER_320x50, placementId: "Hello_ecpm_0.38", delegate: self)
        banner.setRefreshInterval(20.0)
    }

    func showBanner2_320x50() {
        let banner = BideaseBannerView.banner(withFormat: BIDEASE_BANNER_320x50, placementId: "Hello_ecpm_0.38")
        banner.delegate = self
        banner.displayDelegate = self;
        banner.frame = CGRect(x: 0.0, y: 0.0, width: 320.0, height: 50.0)
        banner.setRefreshInterval(20.0)
        self.view.addSubview(banner)
    }

    func showBanner_300x250() {
        let banner = BDEStickyBannerView.attach(to: self.view, position: BIDEASEADS_BANNER_POSITION_BOTTOM, edgeInsets: .zero, bannerFormat: BIDEASE_BANNER_300x250, placementId: "HelloBanner_ecpm_0.38", delegate: self)
        banner.setRefreshInterval(20.0)
    }

    func showBanner2_300x250() {
        let banner = BideaseBannerView.banner(withFormat: BIDEASE_BANNER_300x250, placementId: "HelloBanner_ecpm_0.38")
        banner.delegate = self
        banner.displayDelegate = self;
        banner.frame = CGRect(x: 0.0, y: 0.0, width: 320.0, height: 50.0)
        banner.setRefreshInterval(20.0)
        self.view.addSubview(banner)
    }

    func bideaseBannerViewDidLoadAd(_ bideaseView: BideaseBannerView) {
        print("bideaseViewDidDisplayAd")
    }

    func bideaseBannerView(_ bideaseView: BideaseBannerView, failedToLoadAdWithError error: Error, isConnectionError: Bool) {
        print("bideaseView failedToDisplayAdWithError")
    }

    func bideaseBannerView(onClick:BDEBaseBannerView, error: Error?) {
        print("bideaseView onClick")
    }

    func viewControllerForPresentingModalView() -> UIViewController {
        return self
    }
}

Placement ID & floors

  • Placement ID: use the format AdFormat_ecpm_X.X , where ecpm is the required separator and X.X is the floor price value (any number).
    • Example: Banner_ecpm_1.3 ➡️ floor price = $1.3

Auto-refresh setup

Enable automatic banner refreshing:

[banner setRefreshInterval:20.0 /*new refresh interval in seconds*/];
banner.setRefreshInterval(20.0) /*new refresh interval in seconds*/

To disable auto-refresh (0 = off) and refresh manually:

[banner refreshWithCompletion:^(BOOL success, NSError * _Nullable error) { }];
banner.refresh() { success, error in   }