전체 설정

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

동일한 앱 키

Google 모바일 광고 SDK 버전 8.3.0에서는 동일한 앱 키 가 도입되어 사용자가 사용 중인 앱에서 수집한 데이터를 토대로 관련성이 더 높은 개인 맞춤 광고를 게재할 수 있습니다.

동일한 앱 키는 기본적으로 사용 설정되어 있지만 다음 API를 사용하여 사용 중지할 수 있습니다.

Swift

@import GoogleMobileAds

// Disables the same app key.
GADMobileAds.sharedInstance().requestConfiguration.setSameAppKeyEnabled(false)

Objective-C

@import GoogleMobileAds;

// Disables the same app key.
[GADMobileAds.sharedInstance.requestConfiguration setSameAppKeyEnabled:NO];

동영상 광고 볼륨 조절

앱에 자체적인 볼륨 조절 기능(예: 맟춤 음악 또는 음향효과 볼륨)이 있는 경우, 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;

기본적으로 applicationVolume1(현재 기기 볼륨)로 설정되고 applicationMutedNO로 설정됩니다.

오디오 세션 변경

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

앱에서 오디오를 사용하지 않으면 이러한 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는 iOS 앱에서 발생하는 예외를 조사하여 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;
}