기본 설정

iOS 프로젝트에서 애드팝콘 SSP를 연동하기 위한 문서입니다. 서비스 이용 중 도움이 필요한 경우에는 애드팝콘 SSP 사업팀 (monetize@adpopcorn.com)으로 연락 부탁드립니다

1. SDK 정보

1) SDK 릴리즈 정보

2) SDK 사양

  • iOS 11.0 이상 (SDK 2.5.2 부터 최소 지원 사양 11.0으로 변경. 기존 9.0)

  • Xcode 11 이상

3) SDK 설치 지원 도구

AdPopcorn iOS SDK는 CocoaPods 를 이용한 자동설치를 지원합니다.

CocoaPods 를 이용하여 보다 편리하게 SDK를 설치할 수 있습니다.

2. SDK 설치

1) CocoaPods 설치 및 초기화

CocoaPods가 설치되어 있지 않다면 Mac OSX 의 터미널을 실행하여 CocoaPods를 설치합니다.

$ sudo gem install cocoapods

설치가 완료되면 다음과 같은 터미널 화면을 확인할 수 있습니다.

설치가 완료된 후 CocoaPods를 초기화합니다.

$ pod setup

초기화 이후 다음과 같은 화면이 보이시면, CocoaPods가 설치 완료된 것입니다.

2) Podfile 생성 및 편집

CocoaPods 를 적용할 Xcode 프로젝트 파일이 있는 폴더로 이동하여 Podfile를 생성합니다.

$ cd /path/to/MyXcodeProject
$ touch Podfile

터미널에서 vi 에디터를 실행하여 Podfile 의 내용을 다음과 같이 수정한 뒤에 ESC, Shift+Z(2번)를 연속으로 눌러 종료합니다.

platform :ios, '11.0'
target "myProjectName" do
pod 'AdPopcornSSP', '2.7.2'
end

platform 의 값 중 '11.0' 의 값은 Xcode 프로젝트에서 지원하는 최소 iOS OS 버전을 의미합니다.

3) SDK 설치 및 설치 확인

다음 명령어를 입력하여 SDK를 설치합니다.

$ pod install

다음의 명령어를 실행하여 프로젝트에 설치된 SDK를 확인할 수 있습니다.

$ open MyXCodeProject.wcworkspace

4) SDK 수동 설치

개발환경에 따라서 Cocoapods를 통한 설치가 어려운 경우, SDK를 프로젝트에 수동으로 설치할 수 있습니다.

수동 설치를 하기 위해서는 [APPENDIX : SDK 수동 설치] 를 참고하여 진행합니다.

3. 코드 연동

애드팝콘 SSP framework의 경우 Objective-C를 기반으로 생성되었기에 swift에서 사용하고자 할 경우 아래의 환경을 세팅해 주어야 합니다.

  1. Bridge Header 추가

Swift
//
// AdPopcorn-Bridging-Header.h
// AdPopcornSSPSwiftSample
//
// Created by mick on 2018. 9. 13..
// Copyright (c) 2021년 AdPopcorn. All rights reserved.
//
#ifndef SwiftAdPopcornSSP_ObjectiveC_Header_h
#define SwiftAdPopcornSSP_ObjectiveC_Header_h

#import <AdPopcornSSP/AdPopcornSSP.h>
#import <AdPopcornSSP/AdPopcornSSPAdSize.h>
#import <AdPopcornSSP/AdPopcornSSPBannerView.h>
#import <AdPopcornSSP/AdPopcornSSPError.h>
#import <AdPopcornSSP/AdPopcornSSPInterstitialAd.h>
#import <AdPopcornSSP/AdPopcornSSPInterstitialVideoAd.h>
#import <AdPopcornSSP/AdPopcornSSPNativeAd.h>
#import <AdPopcornSSP/AdPopcornSSPRewardVideoAd.h>
#import <AdPopcornSSP/AdPopcornSSPSplashAd.h>
#import <AdPopcornSSP/AdPopcornSSPWKScriptMessageHandler.h>
#import <AdPopcornSSP/AdPopcornSSPModalAd.h>
#import <AdPopcornSSP/AdPopcornSSPContentsAd.h>
#endif

Objective-C로 구성된 header 파일을 swift에서 사용할 수 있게 bridge header 파일 생성 후 사용하고자 하는 header 파일 import 해줍니다.

  1. Build Setting 내 Header 파일 추가

위에서 생성한 bridge Header 파일을 build setting 에 선언해 줍니다.

1) IDFA 설정

AdSupport Framework를 Dependencies에 추가합니다.

AdSupport Framework가 추가되지 않으면 애드팝콘 SSP 서비스가 정상 동작 하지 않습니다.

2) iOS 14 IDFA 사용 동의 설정

iOS 14 버전의 사용자에게는 AdSupport Framework 추가 이외에 아래의 연동을 통해 수집 동의를 받아야 합니다.

  1. App Tracking Transparency framework를 Dependencies에 추가합니다.

  2. 앱 추적 투명성 승인 요청

IDFA에 액세스하기 위한 앱 추적 투명성 승인 요청을 표시하려면 Info.plist을 업데이트하여 사용을 설명하는 맞춤 메시지와 함께 NSUserTrackingUsageDescription 키를 추가합니다. 다음은 설명 텍스트의 예입니다.

위와 같이 설정 후, 다음과 같이 코드 상에서 requestTrackingAuthorizationWithCompletionHandler:를 호출하여 승인 요청을 합니다. 승인 요청할 경우 아래와 같은 동의 팝업이 노출되게 됩니다.

승인 여부에 대한 결과 값을 받은 후, 광고 로드를 시작하여야 애드팝콘 SDK에서 IDFA를 사용할 수 있습니다. 이에 해당 API는 광고 요청 전에 반드시 마무리 되어야 합니다.

#import <AppTrackingTransparency/AppTrackingTransparency.h>
#import <AdSupport/AdSupport.h>
...
- (void)requestIDFA {
  [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
    // Tracking authorization completed. Start loading ads here.    
  }];
}

3) 로그 수준 설정

SDK에서 노출하는 로그의 수준을 설정할 수 있습니다.

setLogLevel API를 이용하여 설정하며 수준을 결정하는 값은 AdPopcornSSP.h 에 정의된 enum을 사용하며 각 수준은 다음과 같습니다.

설명

AdPopcornSSPLogInfo

info 수준의 가장 기본적인 로그를 노출 합니다.

AdPopcornSSPLogDebug

info 를 포함한 Debug 수준의 로그를 노출 합니다.

AdPopcornSSPLogTrace

모든 로그를 노출합니다.

[AdPopcornSSP setLogLevel:AdPopcornSSPLogTrace];

4) SSP SDK 초기화

InAppBidding을 사용하는 매체의 경우 아래 init API를 사용해, 초기화를 진행해 주어야 합니다. 그렇지 않을 경우, InAppBidding을 사용하는 placement 지면에 대한 업데이트가 이루어지지 않아, inAppBidding이 동작하지 않습니다.

#import <AdPopcornSSP/AdPopcornSSP.h>

@interface AppDelegate() <APSSPSDKInitializeDelegate>
@end

@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
	[AdPopcornSSP sharedInstance].initializeDelegate = self;
	[AdPopcornSSP initializeSDK:@"YOUR_APP_KEY"];
}

#pragma mark - APSSPSDKInitializeDelegate
- (void)AdPopcornSSPSDKDidInitialize
{
	// 초기화가 완료 된 이후, 광고 요청 작업을 수행해 주시기 바랍니다.
}
@end

5) UID 2.0 설정

쿠팡 DSP로 부터 높은 단가의 광고를 제공 받기 위해서는 UID 2.0 설정을 진행하여야 합니다.

애드팝콘 SSP 콘솔 페이지 내 개인정보보호약정서에 동의한 매체의 경우 아래 API를 통해 UID 설정을 진행해 주어야 합니다.

UIDIdentifier Type은 아래 2가지를 지원합니다.

  • 0: Email

  • 1: PhoneNumber

[AdPopcornSSP setUIDIdentifier:0 identifier:@"test_uid@adpopcorn.com"];

Last updated