전체 설정

GADMobileAds 클래스에서는 모바일 광고 SDK가 수집하는 특정 정보를 제어하는 전체 설정을 제공합니다.

동영상 광고 볼륨 조절

앱에 자체적인 볼륨 조절 기능(예: 음악 또는 음향효과용 맞춤 볼륨) Google 모바일 광고 SDK에 앱 볼륨을 공개하면 동영상 광고에 앱 볼륨 설정을 적용할 수 있습니다. 따라서 사용자가 예상할 수 있는 범위의 오디오 볼륨으로 동영상 광고가 제공됩니다.

볼륨 버튼 또는 OS 수준 볼륨 슬라이더를 통해 조절되는 기기 볼륨은 기기 오디오 출력 볼륨을 결정합니다. 그러나 앱은 기기 볼륨을 기준으로 자체적인 볼륨 수준을 조절하여 맞춤 오디오 경험을 제공할 수 있습니다. applicationVolume 속성을 설정하여 Google 모바일 광고 SDK에 상대적인 앱 볼륨을 보고할 수 있습니다. 유효한 광고 볼륨 값의 범위는 0.0(무음)~1.0(현재 기기 볼륨)입니다. 다음은 SDK에 상대적인 앱 볼륨을 보고하는 방법의 예입니다.

Swift

func viewDidLoad() {
  super.viewDidLoad()
  // Set app volume to be half of the current device volume.
  GADMobileAds.sharedInstance().applicationVolume = 0.5
  ...
}

Objective-C

- (void)viewDidLoad {
  [super viewDidLoad];
  // Set app volume to be half of the current device volume.
  [GADMobileAds sharedInstance].applicationVolume = 0.5;
  ...
}

Google 모바일 광고 SDK에 앱 볼륨이 음소거되었음을 알리려면 아래와 같이 applicationMuted 속성을 설정합니다.

Swift

GADMobileAds.sharedInstance().applicationMuted = true

Objective-C

[GADMobileAds sharedInstance].applicationMuted = YES;

음소거를 해제하면 앱 볼륨이 이전에 설정된 수준으로 돌아갑니다. 기본적으로 Google 모바일 광고 SDK의 앱 볼륨은 현재 기기 볼륨과 동일하도록 1로 설정됩니다.

오디오 세션 변경

오디오 세션을 통해 앱의 오디오 동작에 대한 개발자의 의도를 시스템에 반영할 수 있습니다. 오디오 세션에 대한 자세한 내용은 Apple의 오디오 세션 프로그래밍 가이드를 참조하세요. Google 모바일 광고 SDK 오디오를 관리하는 데 사용할 수 있는 옵션은 audioVideoManager 속성을 사용하는 것입니다.

앱에서 오디오를 사용하지 않으면 이러한 API를 사용할 필요가 없습니다. Google 모바일 광고 SDK가 오디오를 재생할 때 오디오 세션 카테고리를 자동으로 관리합니다. 앱에서 오디오를 재생하고 Google 모바일 광고 SDK가 오디오를 재생하는 방법과 시기를 더욱 정밀하게 제어하려는 경우 이러한 API가 도움이 될 수 있습니다.

오디오 동영상 관리자에서 직접 오디오 세션 카테고리를 관리해야 하는 경우 audioSessionIsApplicationManaged 속성을 YES로 설정하세요.

오디오 세션 카테고리를 관리하려면 광고 동영상 및 오디오 재생 이벤트를 알리도록 GADAudioVideoManagerDelegate를 구현하고 오디오 동영상 관리자에서 delegate 속성을 설정해야 합니다. 그런 다음 위에 연결된 Apple의 오디오 세션 프로그래밍 가이드에 따라 오디오 세션 카테고리를 관련 카테고리로 변경하세요.

다음은 앱이 위의 API를 사용하여 음악을 재생할 때 권장하는 코드의 간단한 예입니다.

Swift

func setUp() {
    GADMobileAds.sharedInstance().audioVideoManager.delegate = self
    GADMobileAds.sharedInstance().audioVideoManager.audioSessionIsApplicationManaged = false
}
func myAppWillStartPlayingMusic() {
    // Mutes all Google video ads.
    GADMobileAds.sharedInstance().audioVideoManager.audioSessionIsApplicationManaged = true
    GADMobileAds.sharedInstance().applicationMuted = true
}
func myAppDidStopPlayingMusic() {
    // Un-mutes all of our video ads.
    GADMobileAds.sharedInstance().audioVideoManager.audioSessionIsApplicationManaged = false
    GADMobileAds.sharedInstance().applicationMuted = false
}

// MARK: - GADAudioVideoManagerDelegate
func audioVideoManagerWillPlayAudio(_ audioVideoManager: GADAudioVideoManager) {
    // The mobile ads SDK is notifying your app that it will play audio. You
    // could optionally pause music depending on your apps design.
    MyAppObject.sharedInstance().pauseAllMusic()
}

func audioVideoManagerDidStopPlayingAudio(_ audioVideoManager: GADAudioVideoManager) {
    // The mobile ads SDK is notifying your app that it has stopped playing
    // audio. Depending on your design, you could resume music here.
    MyAppObject.sharedInstance().resumeAllMusic()
}

Objective-C

- (void)setUp {
  [GADMobileAds sharedInstance].audioVideoManager.delegate = self;
  [GADMobileAds sharedInstance].audioVideoManager.audioSessionIsApplicationManaged = NO;
}

- (void)myAppWillStartPlayingMusic {
  // Mutes all Google video ads.
  [GADMobileAds sharedInstance].audioVideoManager.audioSessionIsApplicationManaged =
  YES;
  [GADMobileAds sharedInstance].applicationMuted = YES;
}
- (void)myAppDidStopPlayingMusic {
  // Un-mutes all of our video ads.
  [GADMobileAds sharedInstance].audioVideoManager.audioSessionIsApplicationManaged =
  NO;
  [GADMobileAds sharedInstance].applicationMuted = NO;
}

#pragma mark - GADAudioVideoManagerDelegate

- (void)audioVideoManagerWillPlayAudio:(GADAudioVideoManager *)audioVideoManager {
  // The mobile ads SDK is notifying your app that it will play audio. You
  // could optionally pause music depending on your apps design.
  [[MyAppObject sharedInstance] pauseAllMusic];
}

- (void)audioVideoManagerDidStopPlayingAudio:(GADAudioVideoManager *)audioVideoManager {
    // The mobile ads SDK is notifying your app that it has stopped playing
    // audio. Depending on your design, you could resume music here.
  [[MyAppObject sharedInstance] resumeAllMusic];
}

인앱 구매 보고

인앱 구매 수익을 늘리고 앱에서 발생하는 총 수익을 극대화할 수 있도록 모바일 광고 SDK는 이제 품목 구매 가격 및 통화와 같은 인앱 구매(IAP) 정보를 자동으로 수집합니다. 이제 IAP 전환을 직접 추적하는 로직을 추가로 구현할 필요가 없습니다. AdMob 개발자는 이러한 새 기능을 통해 AdMob의 스마트한 수익 창출을 활용한 혜택을 누릴 수 있습니다. 인앱 구매 하우스 광고를 게재하는 경우 이 IAP 보고 설정을 항상 사용해야 합니다(현재 한정된 사용자에게 베타 서비스로 제공). 이렇게 해야 IAP 하우스 광고 전환이 보고됩니다.

최신 SDK 버전에서는 인앱 구매 보고가 기본적으로 사용됩니다. 그러나 필요하다면 disableAutomatedInAppPurchaseReporting 메소드를 사용하여 이 기능을 중지할 수 있습니다 (위 설명과 같이 하우스 광고를 게재하는 경우 제외). 이 메소드를 호출하기 가장 적합한 시점은 앱이 실행될 때입니다.

Swift

AppDelegate.swift

func application(application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
  GADMobileAds.disableAutomatedInAppPurchaseReporting()
  return true
}

Objective-C

AppDelegate.m
- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  [GADMobileAds disableAutomatedInAppPurchaseReporting];
  return YES;
}

오류 보고

모바일 광고 SDK는 iOS 앱에서 발생하는 예외를 조사하여 SDK가 원인인 경우 예외를 기록합니다. 이러한 예외를 수집하는 목적은 향후 SDK 버전에서 예외를 방지하기 위함입니다.

최신 SDK 버전에서는 오류 보고가 기본적으로 사용됩니다. SDK 관련 예외를 기록하지 않고자 한다면 disableSDKCrashReporting 메소드를 호출하여 이 기능을 중지할 수 있습니다. 이 메소드를 호출하기 가장 적합한 시점은 앱이 실행될 때입니다.

Swift

AppDelegate.swift

func application(application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
  GADMobileAds.disableSDKCrashReporting()
  return true
}

Objective-C

AppDelegate.m
- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  [GADMobileAds disableSDKCrashReporting];
  return YES;
}