iOS SDK Guide

12 분 소요

Subeen Son

현재 버젼은 105 입니다.

Sample Project

Bitbucket
git clone https://mezzomedia_adtech@bitbucket.org/mezzomediaadtech/ios.git

SDK 광고의 구성

구분 샘플 설명
띠 배너 일반적인 바(Bar) 형태의 배너입니다.
대부분 하단에 위치하지만, 퍼블리셔의 조정에 따라 상단 또는 중간에도 게재할 수 있습니다.
전면 배너 앱 실행 시, 전면에 광고가 게시되며, 퍼블리셔의 조정에 따라 노출 영역을 조정할 수 있습니다.
동영상 동영상 콘텐츠 재생 전 Pre-Roll 형태로 재생되는 동영상 광고입니다.
전면확장 앱 실행 시, 전면광고가 게시되고, 남은 영역에는 좌측상단 1pixel기준의 색상이 채워집니다.

SDK Library 구성

헤더 파일

헤더 파일명 설명
ManAdDefine.h MAN 2.0 / MANPLUS 광고 정의 헤더
AdBanner.h 배너 광고 헤더
ManInterstitial.h 전면 광고 헤더
ManMovieAdView.h 동영상 광고 헤더.
ManBreakAdInterstitial.h 중간 전면 광고 헤더
JSONKit.h / JSONKit.m JSON 파싱 관련 파일

라이브러리 파일

라이브러리 파일명 설명
libManAdView.a MANPLUS 광고 라이브러리

리소스 파일

리소스 파일명 설명
ManAdViewResource.bundle Device 번들 리소스
ManAdViewResource_Simulator.bundle Simulator 번들 리소스

MANPLUS SDK에서는 JSON 파싱을 할 때 JSONKit 파일을 사용하기 때문에 반드시 포함시켜 컴파일을 해주셔야 하며, 만약 개발 프로젝트에서 이미 JSONKit 파일을 사용 중이면 포함하지 않으셔도 됩니다.
(JSONKit 내부의 인터페이스가 JSONDecoder 아닌 경우에는 MANPLUS SDK에 포함 되어 있는 JSONKit 파일을 사용해주시기 바랍니다.)

샘플 구성

SDK 샘플 프로젝트가 포함 되어 있습니다.
라이브러리 경로 : ManAdSample/ManAdLibrary/…
Sample Project로 이동

SDK를 사용하기 위한 프레임워크

Framework 명 설명
MediaPlayer.framework 동영상 광고를 위한 framework
CoreLocation.framework 위치정보를 얻기 위한 framework
SystemConfiguration.framework OS 정보를 얻기 위한 framework
CoreTelephony.framework(‘Required’를 ‘Optional’로 변경) 단말기 정보를 얻기 위한 framework
AdSupport.framework (Optional 추가)(‘Required’를 ‘Optional’로 변경) IDFA 정보를 얻기 위한 framework

프로젝트에 추가된 Framework, 라이브러리 파일, 리소스 파일

SDK 연동시 주의사항

IOS 9 ATS(App Transport Security) 기능 사용 관련
IOS9 이상에서는 ATS(App Transport Security) 기능이 제공됩니다.
ATS기능 활성화 시, HTTP 방식이 제한되므로, 정상적인 MANPLUS 광고가 노출되지 않습니다.

info.plist 파일에 아래의 항목을 추가 적용하여 사용 바랍니다.
앱의 info.plist파일에 마우스 오른쪽 버튼을 눌러 ‘Open As > Source Code’로 해당파일 편집모드로 들어간 후, 아래 코드를 삽입합니다.

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSAllowsArbitararyLoads</key>
  <true/>
</dict>

매체별 UI가 특별한 경우 ManAdDefine.h파일의 UITYPE에 자사에서 전달한 스트링으로 기재하셔야 합니다.

배너(리치미디어) 삽입

리치미디어

  • ADBanner 리치미디어는 이미지 형태가 아닌 HTML형태의 광고물입니다.
  • MANPLUS 광고 정책으로 정해져 있는 320x50 사이즈이며, 조정이 불가능 합니다.

리치미디어 연동 방식

배너광고를 구현할 viewController 헤더에 ADBanner.h 임포트 및 <ADBannerDelegate> 적용, ADBanner 타입의 객체를 선언 해주시기 바랍니다.
Sample Project로 이동

ADBanner *manAdView;

ADBanner 광고 객체 설정 – (필수 세팅)

manAdView  =  [[ADBanner alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, MAN_AD_BANNER_HEIGHT)];
// 발급받은 publisher id와 media id, section id 설정
[manAdView publisherID:@"100" mediaID:@"200" sectionID:@"300"];

// viewController 객체 넘겨준다.
manAdView.delegate = self;
 
// 광고뷰의 가로 사이즈를 뷰에 자동으로 맞춘다.
manAdView.autoresizingMask = UIViewAutoresizingFlexibleWidth;

배너광고 옵션 설정 – (선택 세팅)

// 광고 작동 세팅
[manAdView useReachMedia:NO];  	// 광고물 형태 (YES : html형, NO : Image형) – 이미지형 NO설정
[manAdView useGotoSafari:NO];	  // 클릭시 랜딩 액션 (YES : Safari, NO : 모달뷰)

[manAdView userAgeLevel:@"1"];  // u_age_level (만13세 이하 : @"0", 만13세 이상 : @"1")<권장 Parameter>
[manAdView keywordParam:@"KeywordTargeting"]; // Keyword 타게팅을 위한 함수파라미터 (Optional)
    
// 유저 정보 세팅
manAdView.gender = @"1";  // 성별 (남성:@"1", 여성:@"2")
manAdView.age = @"15"; 	  // 나이
manAdView.userId = @"mezzomedia";                       // 유저 ID
manAdView.userEmail = @"mezzomedia@mezzomedia.co.kr";   // 유저 E-Mail 주소
manAdView.userPositionAgree = @"1";       // 위치정보제공 동의여부 (동의:@"1", 미동의:@"0")

배너(이미지형) 삽입

이미지형

  • ADBanner 이미지형은 HTML 랜더링 방식이 아닌 이미지컷 형태의 광고물입니다.
  • 리치미디어형과는 달리 가로x세로 비율을 유지하여 리사이징이 가능합니다.(iPhone6 이상의 해상도를 대응 하기 위해 이미지형 세팅을 권고합니다.)

이미지형 연동 방식

배너광고를 구현할 viewController 헤더에 ADBanner.h 임포트 및 <ADBannerDelegate> 적용, ADBanner 타입의 객체를 선언 해주시기 바랍니다.
Sample Project로 이동

ADBanner *manAdView;

ADBanner 광고 객체 설정 – (필수 세팅)

CGFloat bannerLimitHeight = 64.0f; 
CGFloat bannerFrameWidth = MIN(self.view.bounds.size.width, self.view.bounds.size.height);
CGFloat bannerFrameHeight = bannerFrameWidth / MAN_BANNER_RATIO;
bannerFrameHeight = (bannerFrameHeight > bannerLimitHeight)? bannerLimitHeight : bannerFrameHeight;
manAdView  =  [[ADBanner alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, bannerFrameHeight)];

// 발급받은 publisher id와 media id, section id 설정
[manAdView publisherID:@"100" mediaID:@"200" sectionID:@"300"];

// viewController 객체 넘겨준다.
manAdView.delegate = self;

// 광고뷰의 가로 사이즈를 뷰에 맞춘다.
manAdView.autoresizingMask = UIViewAutoresizingFlexibleWidth;

배너광고 옵션 설정 – (선택 세팅)

// 광고 작동 세팅
[manAdView useReachMedia:NO];  	// 광고물 형태 (YES : html형, NO : Image형) – 이미지형 NO설정
[manAdView useGotoSafari:NO];	  // 클릭시 랜딩 액션 (YES : Safari, NO : 모달뷰)

[manAdView userAgeLevel:@"1"];  // u_age_level (만13세 이하 : @"0", 만13세 이상 : @"1")<권장 Parameter>
[manAdView keywordParam:@"KeywordTargeting"]; // Keyword 타게팅을 위한 함수파라미터 (Optional)

// 유저 정보 세팅
manAdView.gender = @"1";                 // 성별 (남성:@"1", 여성:@"2")
manAdView.age = @"15";	                 // 나이
manAdView.userId = @"mezzomedia";        // 유저 ID
manAdView.userEmail = @"mezzomedia@mezzomedia.co.kr";   // 유저 E-Mail 주소
manAdView.userPositionAgree = @"1";       // 위치정보제공 동의여부 (동의:@"1", 미동의:@"0")

배너 광고 공통사항

배너 광고 시작

// 띠배너 광고 시작. 
[manAdView startBannerAd];

// 띠배너뷰 적용 
[self.view addSubview:manAdView];

이벤트 구현

ADBannerDelegate 발생에 따른 이벤트 구현

#pragma ADBannerDelegate
- (void) adBannerClick:(ADBanner*)adBanner {
  // 배너 광고 클릭
}

- (void) adBannerParsingEnd:(ADBanner*)adBanner {
  // 배너광고 파싱 완료
}

-(void) didReceiveAd:(ADBanner*)adBanner chargedAdType:(BOOL)bChargedAdType {
  // 배너 광고의 수신 성공 및 유료/무료
  NSString *chargedAdType = nil;

  if (bChargedAdType) {
    chargedAdType = @"유료";
  } else {
    chargedAdType = @"무료";
  }
}

- (void) didFailReceiveAd:(ADBanner*)adBanner errorType:(NSInteger)errorType {
  // 배너 광고 수신 실패
  // errorTyped은 ManAdDefine.h 참조
}

- (void) didCloseRandingPage:(ADBanner*)adBanner {
  // 배너광고 클릭시 나타났던 랜딩 페이지가 닫힐 경우 호출
}

Class 설명

ADBanner 연동 함수
함수 설명
(void)publisherID:(NSString)publisherID
mediaID:(NSString
)mediaID
sectionID:(NSString*)sectionID
발급받은 publisherID, mediaID, sectionID로 배너광고 초기화
publisherID : 발급받은 publisherID
mediaID : 발급받은 mediaID
sectionID : 발급받은 sectionID
(void)useReachMedia:(BOOL)useFlag 광고물의 형태 설정
useFlag : Html 형태의 띠배너 설정은 YES, 이미지 형태의 띠배너 설정은 NO
(void)useGotoSafari:(BOOL)useFlag 랜딩 페이지를 띄울 방식 설정
useFlag : 랜딩 페이지를 Safari브라우저로 띄울 경우 YES, 모달뷰로 띄울 경우 NO
(void)userAgeLevel:(NSString*)userAgeLevel User의 나이 레벨 파라미터(권장) (만13세 이하 : @”0”, 만13세 이상 : @”1”)
(void)keywordParam:(NSString*)param 키워드값을 전달
구분자는 ^로 사용
keyword값은 인코딩 (Optional)
(void)startBannerAd 배너광고를 요청한다. (배너 광고를 강제로 교체 할 경우에도 호출)
ADBanner 연동 변수
변수 설명
id<ADBannerDelegate>delegate 광고뷰를 붙이는 ViewController 포인터 전달
manAdView.delegate = self;
NSString *gender 광고를 사용하는 유저의 성별 정보
남성 : @”1”, 여성 : @”2”
manAdView.gender = @”1”
NSString *age 광고를 사용하는 유저의 나이 정보
manAdView.age = @”20”
NSString *userId 광고를 사용하는 유저의 아이디 정보
manAdView.userId = @”mezzo_user”
NSString *userEmail 광고를 사용하는 유저의 이메일 정보
manAdView.userEmail = @”mezzo_user@mezzomedia.co.kr”
NSString *userPositionAgree 광고를 사용하는 유저의 위치정보 제공 동의 여부
위치정보 동의 : @”1”, 위치정보 미동의 : @”0”
manAdView.userPositionAgree = @”1”
ADBanner Delegate
함수 설명
(void)adBannerClick:(ADBanner*)adbanner 배너 클릭에 따른 이벤트를 통보
(void)adBannerParsingEnd:(ADBanner*)adbanner 광고 노출 준비가 되었음을 통보
(void)didReceiveAd:(ADBanner*)adBanner chargedAdType:(BOOL)bChargedAdType 광고 수신 성공 통보
bChargedAdType: 유료광고 인지 무료광고인지 알려준다, YES 이면 유료광고, NO 이면 무료광고
(void)didFailReceiveAd:(ADBanner*)adBanner erorType:(NSInteger)errorType 배너 광고 수신 실패 통보
errorType : 광고 실패의 원인인 에러 코드 (광고 에러코드 표 참고)
(void)didCloseRandingPage:(ADBanner*)adbanner 배너광고 클릭시 나타났던 랜딩 페이지(모달뷰만 해당)가 닫힐 경우 통보

전면 광고 삽입

전면 광고 연동

전면광고를 구현할 viewController 헤더에 ManInterstitial.h 임포트 및 <ManInterstitialDelegate> 적용, ManInterstitial 타입의 전면광고 객체를 선언 합니다.
Sample Project로 이동

ManInterstitial *manInterstitial = [ManInterstitial shareInstance];

ManInterstitial 광고 객체 설정 – (필수 세팅)

// 발급받은 publisher id와 media id, section id 설정
[manInterstitial publisherID:@"100" mediaID:@"200" sectionID:@"300"];

전면광고 옵션 설정 – (선택 세팅)


[manInterstitial userAgeLevel:@"1"];               // u_age_level (만13세 이하 : @"0", 만13세 이상 : @"1")<권장 Parameter>
[manInterstitial keywordParam:@"KeywordTargeting"]; // Keyword 타게팅을 위한 함수파라미터 (Optional)

// 유저 정보 세팅
manInterstitial.gender = @"1";                  // 성별 (남성:@"1", 여성:@"2")
manInterstitial.age = @"15";	                  // 나이
manInterstitial.userId = @"mezzomedia";         // 유저 ID
manInterstitial.userEmail = @"mezzomedia@mezzomedia.co.kr";   // 유저 E-Mail 주소
manInterstitial.userPositionAgree = @"1";      // 위치정보제공 동의여부 (동의:@"1", 미동의:@"0")
manInterstitial.viewType = @"0";              //ui세팅 (전체:@"0", 팝업:@2")

전면광고 시작

// 전면광고 시작
[manInterstitial startInterstitial];

ManInterstitialDelegate 발생에 따른 이벤트를 구현합니다.

#pragma mark ManInterstitialDelegate

-(void)didReceiveInterstitial {
    // 전면광고 수신 성공
}

-(void)didFailReceiveInterstitial :(NSInteger)errorType {
    // 전면광고 수신에러
}

-(void)didCloseInterstitial {
    // 전면광고 닫힘
}

-(void)didClickInterstitial {
    // 전면광고 클릭
}

Class 설명

ManInterstitial 연동 함수
함수 설명
(ManInterstitial*)shareInstance; 전면광고의 객체 생성
(void)publisherID:(NSString)publisherID
mediaID:(NSString
)mediaID
sectionID:(NSString*)sectionID
발급받은 publisherID, mediaID, sectionID로 전면광고 초기화
publisherID : 발급받은 publisherID
mediaID : 발급받은 mediaID
sectionID : 발급받은 sectionID
(void)useGotoSafari:(BOOL)useFlag 랜딩 페이지를 띄울 방식 설정
useFlag : 랜딩 페이지를 Safari브라우저로 띄울 경우 YES, 모달뷰로 띄울 경우 NO
(void)userAgeLevel:(NSString*)userAgeLevel User의 나이 레벨 파라미터(권장) (만13세 이하 : @”0”, 만13세 이상 : @”1”)
(void)keywordParam:(NSString*)param 키워드값을 전달
구분자는 ^로 사용
keyword값은 인코딩 (Optional)
(void)startInterstitial 전면 광고를 요청하며, 전면광고를 보여줌
ManInterstitial 연동 변수
변수 설명
id<ManInterstitialDelegate>delegate 광고뷰를 붙이는 ViewController 포인터 전달
manInterstitial.delegate = self;
NSString *gender 광고를 사용하는 유저의 성별 정보
남성 : @”1”, 여성 : @”2”
manInterstitial.gender = @”1”
NSString *age 광고를 사용하는 유저의 나이 정보
manInterstitial.age = @”20”
NSString *userId 광고를 사용하는 유저의 아이디 정보
manInterstitial.userId = @”mezzo_user”
NSString *userEmail 광고를 사용하는 유저의 이메일 정보
manInterstitial.userEmail = @”mezzo_user@mezzomedia.co.kr”
NSString *userPositionAgree 광고를 사용하는 유저의 위치정보 제공 동의 여부
위치정보 동의 : @”1”, 위치정보 미동의 : @”0”
manInterstitial.userPositionAgree = @”1”
ManInterstitia Delegate
함수 설명
(void)didReceiveInterstitial 전면광고 수신 성공
(void)didFailReceiveInterstitial:(NSInteger)errorType 전면광고 수신 실패 (광고 에러코드 표 참고)
(void)didCloseInterstitial 전면광고 닫힘
(void)didClickInterstitial 전면광고 클릭에 따른 이벤트 통보

동영상 광고 삽입

동영상 광고 연동

동영상 광고를 구현할 viewController 헤더에 ManMovieAdView.h 임포트 및 <ManMovieAdViewDelegate> 적용, ManMovieAdView 타입의 동영상광고 객체를 선언합니다.
Sample Project로 이동

ManMovieAdView *manMovieAdView =  [[ManMovieAdView alloc]
initWithFrame:CGRectMake(0, 0, movieWidth, movieHeight)];

ManMovieAdView 광고 객체 설정 – (필수 세팅)

// 발급받은 publisher id와 media id, section id 설정
[manMovieAdView publisherID:@"100" mediaID:@"200" sectionID:@"303"];

동영상 광고 생성시 ManMovieAdView 프레임을 설정 할 경우, 플레이어의 프레임은 자동으로 맞추어 지기 때문에 가로/세로 회전시에도 ManMovieAdView의 프레임을 설정 해야 합니다.
ManMovieAdView의 프레임을 설정을 하지 않을 경우, 플레이어의 프레임도 상이하게 보일수 있습니다.

동영상 광고 옵션 설정 – (선택 세팅)

// 광고 작동 세팅
[manMovieAdView useGotoSafari:NO];      // 클릭시 랜딩 액션 (YES : Safari, NO : 모달뷰)

[manMovieAdView userAgeLevel:@"1"];               // u_age_level (만13세 이하 : @"0", 만13세 이상 : @"1")<권장 Parameter>
[manMovieAdView keywordParam:@"KeywordTargeting"]; // Keyword 타게팅을 위한 함수파라미터 (Optional)

// 카테고리 설정
manMovieAdView.categoryCD = @"00200";

// 유저 정보 세팅
manMovieAdView.gender = @"1"	            // 성별 (남성:@"1", 여성:@"2")
manMovieAdView.age = @"15";	            // 나이
manMovieAdView.userId = @"mezzomedia";      // 유저 ID
manMovieAdView.userEmail = @"mezzomedia@mezzomedia.co.kr";   // 유저 E-Mail 주소
manMovieAdView.userPositionAgree = @"1";    // 위치정보제공 동의여부 (동의:@"1", 미동의:@"0")

동영상광고 시작

// 동영상 광고뷰 적용
[self.view addSubview:manMovieAdView];

// 동영상 광고 시작
[manMovieAdView startInterstitial];

ManMovieAdViewDelegate 발생에 따른 이벤트를 구현합니다.

#pragma mark ManMovieAdViewDelegate
-(void)didReceiveMovieAd(ManMovieAdView*)manMovieAdView {
     // 동영상 광고 수신 성공
}
-(void)didFailReceiveMovieAd(ManMovieAdView*)manMovieAd  (NSInteager)errorType 
{
     // 동영상 광고 수신 에러
}
-(void)didFinishMovieAd(ManMovieAdView*)manMovieAd {
     // 동영상 광고 종료
}
-(void)didStopMovieAd(ManMovieAdView*)manMovieAd {
     // 동영상 광고 플래이 종료 (동영상 광고 플래이 도중 종료)
}
-(void)didSkipMovieAd(ManMovieAdView*)manMovieAd {
     // 동영상 광고 스킵
}
-(void)didClickMovieAd(ManMovieAdView*)manMovieAd {
     // 동영상 광고 클릭
}
-(void)didNotExistMovieAd(ManMovieAdView*)manMovieAd {
    // 동영상 광고 없음
}
- (void)didCloseRandingPage:( ManMovieAdView*)manMovieAd {
      // 광고 클릭시 나타났던 랜딩 페이지가 닫힐 경우 호출
}

Class 설명

ManMovieAd 연동 함수
함수 설명
(void)publisherID:(NSString)publisherID
mediaID:(NSString
)mediaID
sectionID:(NSString*)sectionID
발급받은 publisherID, mediaID, sectionID로 동영상광고 초기화
publisherID : 발급받은 publisherID
mediaID : 발급받은 mediaID
sectionID : 발급받은 sectionID
(void)useGotoSafari:(BOOL)useFlag 랜딩 페이지를 띄울 방식 설정useFlag : 랜딩 페이지를 Safari브라우저로 띄울 경우 YES, 모달뷰로 띄울 경우 NO
(void)userAgeLevel:(NSString*)userAgeLevel User의 나이 레벨 파라미터(권장) (만13세 이하 : @”0”, 만13세 이상 : @”1”)
(void)keywordParam:(NSString*)param 키워드값을 전달
구분자는 ^로 사용
keyword값은 인코딩 (Optional)
(void)startMovieAd 동영상 광고 요청
(void)stopMovieAd 동영상 광고 중지
(void)setScreenMode:
(MOVIE_SCREEN_MODE)movieScreeMode
동영상 화면 모드 설정
MODE_NORMAL : 4:3 화면
MODE_WIDE : 16:9 화면
MODE_STRECH : 부모 View 크기에 맞춤
MODE_ORIGINAL : 영상 실제 사이즈
ManMovieAd 연동 변수
변수 설명
id<ManMovieAdViewDelegate>delegate 광고뷰를 붙이는 ViewController 포인터 전달
manMovieAdView.delegate = self;
NSString *gender 광고를 사용하는 유저의 성별 정보
남성 : @”1”, 여성 : @”2”
manMovieAdView.gender = @”1”
NSString *age 광고를 사용하는 유저의 나이 정보
manMovieAdView.age = @”20”
NSString *userId 광고를 사용하는 유저의 아이디 정보
manMovieAdView.userId = @”mezzo_user”
NSString *userEmail 광고를 사용하는 유저의 이메일 정보
manMovieAdView.userEmail = @”mezzo_user@mezzomedia.co.kr”
NSString *userPositionAgree 광고를 사용하는 유저의 위치정보 제공 동의 여부
위치정보 동의 : @”1”, 위치정보 미동의 : @”0”
manMovieAdView.userPositionAgree = @”1”
ManMovieAdView Delegate
함수 설명
(void)didReceiveMovieAd:(ManMovieAdView*)manMovieAd 동영상 광고 수신 성공
(void)didFailReceiveMovieAd: (ManMovieAdView*)manMovieAderrorType:(NSInteger)errorType 동영상 광고 수신 실패. (광고 에러코드 표 참조)
(void)didFinishMovieAd:(ManMovieAdView*)manMovieAd 동영상 광고 종료
(void)didStopMovieAd:(ManMovieAdView*)manMovieAd 동영상 광고 플레이 종료(동영상 광고 플레이 도중 종료)
(void)didSkipMovieAd:(ManMovieAdView*)manMovieAd 동영상 광고 스킵
(void)didClickMovieAd:(ManMovieAdView*)manMovieAd 동영상 광고 클릭
(void)didNotExistMovieAd:(ManMovieAdView*)manMovieAd 동영상 광고 없음
(void)didCloseRandingPage:(ManMovieAdView*)manMovieAd 랜딩뷰 닫힘

광고 에러 코드

code 이름 설명
0 NewManAdSuccess 성공
-1002 NewManAdRequestError 잘못된 광고 요청
-2002 NewManAdParameterError 잘못된 파라메터 전달
-3002 NewManAdIDError 광고솔루션에서 발급한 사업자/미디어/섹션 코드 미존재
-4002 NewManAdNotError 광고없음
-5002 NewManAdServerError 광고서버 에러
-6002 NewManAdNetworkError 네트워크 에러
-8001 NewManAdFileError 광고물 파일 형식 에러
-9001 NewManAdCreativeError 광고물 요청 실패

F & Q

광고 노출 여부 확인

No 내용
1 Q. SDK 적용 후 광고가 노출이 안 되는 경우 및 확인 절차
  A1 : 모바일기기 테스트
광고 수신에 대한 Delegate 함수 호출 여부 및 수신실패 Delegate의 에러코드를 확인합니다.(각 광고의 Delegate 내용을 참조 해 주세요)
  A2 : 매체측 적용 오류
발급받은 ID(publisherID, mediaID, sectionID)가 정확하게 적용 되었는지 확인 합니다.
(카테고리 타겟팅을 하는 동영상 광고의 경우, 카테고리 코드도 정확하게 적용 되었는지 확인)
  A3 : 하우스 캠페인 세팅 오류
광고가 노출 되지 않는 현상은 대부분 SDK연동 세팅 오류와 관련이 있으므로,
1차적으로 연동상태 체크를 하신후, 여전히 광고 노출이 되지 않을 경우, 문의처로 연락 바랍니다.
2 Q. 상용 물량 세팅 이후에 광고가 안 보이거나 하우스 광고만 노출 될 경우
  A. 상용 광고의 경우, 매시각 정시에 송출되므로 정시 기준으로 재확인 바랍니다.

No ad 처리방법(패스백)

No 내용
1 Q. No ad 처리 방법에 대한 문의
  A. 광고 세팅 환경에 따라, 물량이 소진 되었을 경우 No Ad가 발생하며, No Ad시 SDK는 수신실패 Delegate(에러코드 -4002)를 호출 합니다.
해당 Delegate가 호출이 되면, MANPLUS 광고 재 요청 및 타광고 호출, 본컨텐츠 재생(동영상) 등을 구현 하시면 됩니다.
2 Q. No ad 캠페인 세팅 후 리포트 수치가 잡히는 이유?
  A. No ad 캠페인 세팅을 해도 리포트 수치 발생은 정상이며, 이는 실제 노출이 아닌 인벤토리 체크를 위한 호출 수치 입니다.

업데이트: