중복 제어 적용 가이드
통합 로더(=GFPAdLoader)를 사용하여 광고를 로드되는 광고(=배너/네이티브 심플형/네이티브 일반형 타입의 광고)에 한해 중복 제어 기능을 지원합니다.
GFPAdDedupeManager 생성
중복 제어를 관리 할 GFPAdDedupeManager 프로퍼티 선언 후 객체를 생성합니다.
numAdsDedupe는 중복 제어 수를 의미하며, 연속된 n개의 광고에 대해 중복이 없는 광고 노출을 보장합니다. 해당 파라미터는 2 이상 5 이하로 설정하기를 권장합니다.
- Objective-C
- Swift
@property (nonatomic, strong) GFPAdDedupeManager *dedupeManager;
var dedupeManager : GFPAdDedupeManager?
- Objective-C
- Swift
self.dedupeManager = [[GFPAdDedupeManager alloc] initWithNumAdsDeduped:3]; //중복 제어가 보장되는 수.
self.dedupeManager = GFPAdDedupeManager(numAdsDeduped: 3) //중복 제어가 보장되는 수.
GFPAdLoader 생성
광고를 로드할 GFPAdLoader 객체를 생성합니다.
광고에 따른 GFPAdLoader 객체 생성에 관련한 가이드는 아래를 참고하세요.
GFPAdDedupeManager를 통한 광고 요청
GFPAdDedupeManager를 통해 광고를 요청합니다. 광고 요청 시 GFPAdLoader을 파라미터로 넘깁니다. 전달된 로더의 순서대로 광고 요청하며, 해당 로더의 delegate로 로드 성공/실패 여부를 전달합니다.
- Objective-C
- Swift
[self.dedupeManager loadAdWith:self.loader];
self.dedupeManager?.loadAd(with: self.loader)
서로 다른 UnitID를 가진 GFPAdLoader 객체 또한 중복 제어가 가능합니다.
- Objective-C
- Swift
self.loader2 = [[GFPAdLoader alloc] initWithUnitID: @"INPUT_YOUR_UNIT_ID2"
rootViewController: self
adParam: adParam];
...(생략)... //option 설정 및 등록
self.loader2.delegate = self;
self.loader3 = [[GFPAdLoader alloc] initWithUnitID: @"INPUT_YOUR_UNIT_ID3"
rootViewController: self
adParam: adParam];
...(생략)... //option 설정 및 등록
self.loader3.delegate = self;
[self.dedupeManager loadAdWith:self.loader2];
[self.dedupeManager loadAdWith:self.loader3];
self.loader2 = GFPAdLoader.init(unitID: "INPUT_YOUR_UNIT_ID2", rootViewController: self, adParam: adParam)
...(생략)... //option 설정 및 등록
self.loader2.delegate = self;
self.loader3 = GFPAdLoader.init(unitID: "INPUT_YOUR_UNIT_ID3", rootViewController: self, adParam: adParam)
...(생략)... //option 설정 및 등록
self.loader3.delegate = self;
self.dedupeManager?.loadAd(with: loader2)
self.dedupeManager?.loadAd(with: loader3)
GFPAdLoaderDelegate
GFPAdLoaderDelegate를 구현하시면, 해당 메서드를 통해 광고 로드 관련 이벤트를 받으실 수 있습니다.
광고에 따른 GFPAdLoaderDelegate에 관한 처리는 아래 가이드를 참고하세요.