Ad Exchange의 직접 액세스 설정

플랫폼 선택: Android iOS

Google 모바일 광고 SDK는 Ad Exchange 속성을 사용하여 앱을 수익 창출할 수 있도록 지원합니다. 이 가이드에서는 Ad Exchange에서 지원하는 모든 광고 형식에 맞게 앱을 구성하는 방법을 보여줍니다.

기본 요건

Ad Exchange에 액세스하도록 앱 구성

앱의 Info.plist 파일을 업데이트하여 Ad Manager 앱 ID (Ad Manager UI에서 확인)의 문자열 값이 포함된 GADApplicationIdentifier 키를 설정합니다.

또한 위와 같이 info.plist 파일에 GADApplicationIdentifier 키를 설정하지 않으면 아래 메시지가 표시되며 앱이 다운됩니다.

Terminating app due to uncaught exception 'GADInvalidInitializationException',
reason: 'The Google Mobile Ads SDK was initialized without an application ID.
Google AdMob publishers, follow instructions at
https://goo.gle/admob-ios-update-plist to set a valid
application ID. Google Ad Manager publishers, follow instructions at
https://goo.gle/ad-manager-ios-update-plist.'

다음으로 표시할 광고 형식을 선택할 수 있습니다. 이 가이드의 나머지 부분에서는 배너 형식을 구현하여 Ad Exchange에서 광고를 로드하는 방법을 설명합니다. Google 모바일 광고 SDK에서 지원하는 모든 광고 형식에 동일한 단계를 적용할 수 있습니다.

Ad Exchange에서 광고 로드

광고 단위 ID 대신 후행 슬래시가 있는 Ad Exchange 웹 속성 코드를 사용할 수 있습니다. 예를 들면 ca-mb-app-pub-5629679302779023/입니다.

배너 광고를 로드하고 표시하려면 GAMBannerViewadUnitID이 필요합니다. 이 속성을 다음과 같이 Ad Exchange 웹 속성 ID로 설정할 수 있습니다.

override func viewDidLoad() {
  super.viewDidLoad()
  ...

  bannerView.adUnitID = "ca-mb-app-pub-5629679302779023/"
  bannerView.rootViewController = self
}

GAMBannerView의 위치를 정하고 속성을 구성하면 광고를 로드하고 광고 이벤트를 사용하여 광고의 동작을 맞춤설정할 수 있습니다.

Ad Exchange 웹 속성 코드에 후행 슬래시를 추가하지 않으면 다음 메시지와 함께 광고 요청 오류가 발생합니다.

Invalid Request. Cannot determine request type. Is your ad unit id correct?

Ad Exchange 웹 속성 코드를 광고 단위로 변환할 수도 있습니다. 그런 다음 Ad Manager UI를 사용하여 Ad Exchange 태그를 생성하고 앱에 복사합니다. 생성된 태그에는 Ad Exchange 웹 속성 코드가 있어야 하며, 그 뒤에 후행 슬래시가 없는 하위 광고 단위 ID가 와야 합니다(예: ca-mb-app-pub-5629679302779023/banner).

작업이 끝났습니다. 이제 앱에서 Ad Exchange의 배너 광고를 로드하고 표시할 수 있습니다.

또한 Ad Exchange 웹 속성을 사용하여 다음 가이드에 따라 Ad Exchange의 다른 광고 형식을 로드하고 표시할 수 있습니다.

(승인된 유럽 게시자만 해당) 최저 가격 추가하기

'최저 가격' 기능 요청을 제출할 수 있습니다.

승인되면 각각 pubfpvtf 매개변수를 사용하여 광고 요청에 공개 최저가 또는 비공개 최저가를 포함할 수 있습니다. 다음 코드 예시에서 '123'을 마이크로 단위의 최저 가격과 네트워크의 기본 통화로 바꿉니다. 마이크로가 적용되는 방식의 예: 기본 통화가 USD인 경우 '6000000'을 입력하면 $6.00에 해당합니다.

Swift

let extras = AdNetworkExtras()
extras.additionalParameters = ["pubf": "123", "pvtf": "123"]

let request = AdManagerRequest
request.register(extras)

Objective-C

GADAdNetworkExtras *extras = [[GADAdNetworkExtras alloc] init];
extras.additionalParameters = @{@"pubf": @"123", @"pvtf": @"123"};

GAMRequest *request = [GAMRequest request];
[request registerAdNetworkExtras:extras];