AdPie
  • AdPie
    • 시작하기
  • Android
    • 프로젝트 설정
    • 광고 연동
      • 배너 광고
      • 전면 광고
      • 네이티브 광고
      • 리워드 비디오 광고
    • 미디에이션
      • 구글 애드몹
      • 구글 애드 매니저
      • 앱러빈
    • 공통
      • 에러코드
      • 디버깅
    • 변경내역
  • iOS
    • 프로젝트 설정
    • iOS 14+ 대응
    • 광고 연동
      • 배너 광고
      • 전면 광고
      • 네이티브 광고
      • 리워드 비디오 광고
    • 미디에이션
      • 구글 애드몹
      • 구글 애드 매니저
      • 앱러빈
    • 공통
      • 에러코드
      • 디버깅
      • 타겟팅
    • 변경내역
  • Flutter
    • 프로젝트 설정
    • 광고 연동
      • 배너 광고
      • 전면 광고
      • 리워드 비디오 광고
    • 공통
      • 에러코드
    • 변경내역
  • Unity
    • 프로젝트 설정
    • 광고 연동
      • 배너 광고
      • 전면 광고
      • 리워드 비디오 광고
    • 공통
      • 에러코드
    • 변경내역
  • Exchange
    • For Buyers
Powered by GitBook
On this page
  • 1 : 준비
  • 2 : SDK 초기화
  • 3 : 광고뷰 생성
  • 4 : 광고 요청과 표출
  • 5 : 광고 이벤트
  1. iOS
  2. 광고 연동

배너 광고

1 : 준비

  • 프로젝트 설정을 통해 광고 연동을 위한 준비를 한다.

2 : SDK 초기화

  • 최초 SDK 를 초기화 완료 후, 광고 요청이 가능하다.

  • 사이트에서 발급받은 Media ID를 입력한다.

import UIKit
import AdPieSDK

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
    var window: UIWindow?
    func application(_ application: UIApplication, 
        didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool 
    {
        // SDK 초기화
        AdPieSDK.sharedInstance().initWithMediaId("YOUR_MEDIA_ID")        
        return true
    }
}
#import "AppDelegate.h"
#import <AdPieSDK/AdPieSDK.h>

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application 
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{
    // SDK 초기화
    [[AdPieSDK sharedInstance] initWithMediaId:@"YOUR_MEDIA_ID_HERE"];   
    return YES;
}

@end

3 : 광고뷰 생성

  • 띠배너 생성시 가로의 크기는 320 이상, 세로의 크기는 50으로 생성한다. (가로는 디바이스 전체 너비를 추천한다.)

  • 띠배너의 경우 320 사이즈의 이미지로 가운데에 채워지고 나머지는 배경색으로 채워진다.

1. 프로그램 코드를 통한 생성

// ViewController.swift
import UIKit
import AdPieSDK

class BannerAdViewContoller: UIViewController, APAdViewDelegate {

    var adView: APAdView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        // 세로는 50으로 고정
        adView.rootViewController = self
        adView.delegate = self
        view.addSubview(adView)
        adView.translatesAutoresizingMaskIntoConstraints = false
        let safeAreaGuide = view.safeAreaLayoutGuide
        NSLayoutConstraint.activate([
            adView.bottomAnchor.constraint(equalTo: safeAreaGuide.bottomAnchor),
            adView.leadingAnchor.constraint(equalTo: safeAreaGuide.leadingAnchor),
            adView.trailingAnchor.constraint(equalTo: safeAreaGuide.trailingAnchor),
            adView.heightAnchor.constraint(equalToConstant: 50)
        ])
    }
}
// ViewController.h
#import <UIKit/UIKit.h>
#import <AdPieSDK/AdPieSDK.h>

@interface ViewController : UIViewController <APAdViewDelegate>
@property APAdView *adView;
@end

// ViewController.m
- (void)viewDidLoad {
    [super viewDidLoad];
    
    // 오토 레이아웃, 세로는 50으로 고정
    [self.view addSubview:self.adView];
    self.adView.translatesAutoresizingMaskIntoConstraints = NO;
    UILayoutGuide * guide = self.view.safeAreaLayoutGuide;
    [NSLayoutConstraint activateConstraints:@[
        [self.adView.bottomAnchor constraintEqualToAnchor:guide.bottomAnchor],
        [self.adView.leadingAnchor constraintEqualToAnchor:guide.leadingAnchor constant:10],
        [self.adView.trailingAnchor constraintEqualToAnchor:guide.trailingAnchor constant:-10],
        [self.adView.heightAnchor constraintEqualToConstant:50]
    ]];
}

2. 인터페이스 빌더(스토리 보드)를 통한 생성

  1. ViewController에 AdPie 라이브러리를 임포트하고, APAdViewDelegate프로토콜을 도입(adopt)한다.

// ViewController.swift
import UIKit
import AdPieSDK

class ViewController: UIViewController, APAdViewDelegate {

}
// ViewController.h
#import <UIKit/UIKit.h>
#import <AdPieSDK/AdPieSDK.h>

@interface ViewController : UIViewController <APAdViewDelegate>
@end
  1. 스토리 보드 파일에서 배너 광고를 표시할 UIView를 추가하고, Custom Class을 APAdView로 변경한다.

  1. 광고 뷰의 제약(Constraints)을 설정한다.

  • Ad View Width = Superview.Width

  • Ad View Height = 50,

  • Ad View Center X = Superview.Center X

  • Ad View Bottom = Bottom Layout Top

  1. 광고 뷰(UIView)를 노출 될 ViewController에 드래그하여 프로퍼티(IBOutlet)로 연결한다.

// ViewController.swift
import UIKit
import AdPieSDK

class ViewController: UIViewController, APAdViewDelegate {
    @IBOutlet weak var adView: APAdView!
}
// ViewController.h
#import <UIKit/UIKit.h>
#import <AdPieSDK/AdPieSDK.h>

@interface ViewController : UIViewController <APAdViewDelegate>

@property (weak) IBOutlet APAdView *adView;

@end

4 : 광고 요청과 표출

  • 사이트에서 발급받은 Slot ID를 입력한다.

  • 광고뷰의 RootViewController 를 등록해야 주기별로 광고 재요청을 한다. (Refresh)

  • 광고 호출에 대한 콜백이 필요한 경우 델리게이트를 등록하며, 자세한 사항은 하단을 참고한다.

  • 타겟팅 적용으로 보다 높은 수익을 얻을 수 있다.

// ViewController.swift
override func viewDidLoad() {
    super.viewDidLoad()
        
    // 광고뷰에 Slot ID 입력
    adView.slotId = "YOUR_SLOT_ID"
    // 광고뷰의 RootViewController 등록 (Refresh를 위해 필요)
    adView.rootViewController = self
    // 델리게이트 등록
    adView.delegate = self
    // 광고 요청
    adView.load()
}
// ViewController.m
- (void)viewDidLoad {
    [super viewDidLoad];

    // 광고뷰에 Slot ID 입력
    self.adView.slotId = @"YOUR_SLOT_ID_HERE";
    // 광고뷰의 RootViewController 등록 (Refresh를 위해 필요)
    self.adView.rootViewController = self;
    // 델리게이트 등록
    self.adView.delegate = self;
    // 광고요청
    [self.adView load];
}

5 : 광고 이벤트

  • 광고 호출에 대한 콜백(이벤트)을 받을 수 있다.

  • ViewController에서 APAdViewDelegate 프로토콜을 도입(adopt)한다.

  • 광고 뷰의 delegate 프로퍼티에 콜백(이벤트)를 수신받을 객체를 설정한다.

  • 델리게이트의 메소드 중 성공, 실패에 대한 메소드는 필수사항으로 반드시 구현해야 하며, 나머지 메소드는 필요에 따라서 구현한다.

  • 에러코드를 통해 광고 실패에 대한 이유를 알 수 있다.

// ViewController.swift
import UIKit
import AdPieSDK

class ViewContorller: UIViewController, APAdViewDelegate {

    override func viewDidLoad() {
        super.viewDidLoad()
        ...
        // 델리게이트 등록
        adView.delegate = self
    }

    // MARK: - APAdView delegates
    func adViewDidLoadAd(_ view: APAdView!) {
        // 광고 표출 성공 후 이벤트 발생
    }
    
    func adViewDidFail(toLoadAd view: APAdView!, withError error: Error!) {
        // 광고 요청 또는 표출 실패 후 이벤트 발생
        // error code : error._code
        // error message : error.localizedDescription
    }
    
    func adViewWillLeaveApplication(_ view: APAdView!) {
        // 광고 클릭 후 이벤트 발생
    }

Previous광고 연동Next전면 광고

Last updated 8 months ago