전면 광고

전면광고는 화면 전체를 덮는 형태의 광고입니다. 다음을 참고하여 전면광고를 연동합니다.

1. 인스턴스 생성

노출하고자 하는 ViewController.m에 AdPopcornSSPInterstitialAd.h 를 import 하고 인스턴스 변수를 선언합니다.

#import <AdPopcornSSP/AdPopcornSSPInterstitialAd.h>

@interface AdPopcornSSPInterstitialADViewController () <AdPopcornSSPInterstitialAdDelegate>
{ 
    AdPopcornSSPInterstitialAd *_sspInterstitialAd;
}
@end

ViewController.m 을 수정하여 생성한 인스턴스를 구현합니다.

@implementation AdPopcornSSPInterstitialADViewController 

- (void)viewDidLoad { 
  [super viewDidLoad]; 

  _sspInterstitialAd = [[AdPopcornSSPInterstitialAd alloc] initWithKey:@"YOUR_APP_KEY" placementId:@"YOUR_PLACEMENT_Id" viewController:self];
}
@end

1) Placement ID 변경

전면 인스턴스 생성 시 사용한 placementID를 변경하고자 할 경우, 아래와 같은 방식으로 변경합니다.

_sspInterstitialAd.placementId = @"변경하고자 할 ID";

2. 광고 요청

loadRequest API를 호출하여 전면 광고를 불러옵니다.

[_sspInterstitialAd loadRequest];

loadRequst 호출에 대한 결과로 광고 수신에 실패한 경우에는 loadAd 재호출을 하시면 안됩니다. 과도한 광고 요청 api 호출은 block 사유가 됩니다.

3. 광고 노출

presentFromViewController API(present API)를 호출하여 전면광고를 노출합니다.

[_sspInterstitialAd presentFromViewController:self];

4. 광고 배경색 변경

전면 광고가 나오는 뷰의 빈 공간에 배경색을 채울 수 있습니다.

// default : [UIColor colorWithRed:0 green:0 blue:0 alpha:0.8] 
_sspInterstitialAd.backgroundColor = [UIColor redColor]; 

5. 델리게이트

전면광고에서 발생하는 이벤트에 대한 델리게이트를 제공합니다. 델리게이트를 사용하기 위해서는 APSSPInterstitialAdDelegate를 추가하여야 합니다.

  • Objective-C 의 경우 _sspInterstitialAd 인스턴스에 delegate를 설정하고 구현하여야 하며,

  • Swift 의 경우 interstitialAd 인스턴스에 delegate를 설정하고 구현하여야 합니다.

delegate설명

APSSPInterstitialAdLoadSuccess

전면광고 로드 성공

APSSPInterstitialAdLoadFail

전면광고 로드 실패. 에러코드 값

APSSPInterstitialAdShowSuccess

전면 광고 노출 성공

APSSPInterstitialAdShowFail

전면 광고 노출 실패

APSSPInterstitialAdClosed

전면광고 닫기

APSSPInterstitialAdClicked

전면광고 클릭

_sspInterstitialAd 인스턴스에 delegate를 설정하고 구현합니다.

#import "AdPopcornSSPInterstitialADViewController.h"

@interface AdPopcornSSPInterstitialADViewController() <APSSPInterstitialAdDelegate>

@end

@implementation AdPopcornSSPInterstitialADViewController
  - (void)viewDidLoad { 
    [super viewDidLoad]; 
  
    // 전면광고 델리게이트 설정 
    _sspInterstitialAd.delegate = self;
  }
  
  //전면광고 델리게이트 구현
  -(void)APSSPInterstitialAdLoadSuccess:(AdPopcornSSPInterstitialAd *)interstitialAd
  { 
  }
  
  -(void)APSSPInterstitialAdLoadFail:(AdPopcornSSPInterstitialAd *)interstitialAd error:(AdPopcornSSPError *)error
  { 
  
  }
  
  -(void)APSSPInterstitialAdClosed:(AdPopcornSSPInterstitialAd *)interstitialAd
  {
  }
  
  -(void)APSSPInterstitialAdClicked:(AdPopcornSSPInterstitialAd *)interstitialAd
  { 
  }

@end

Last updated