Глобальные настройки

Класс GADMobileAds предоставляет глобальные настройки для управления определенной информацией, собираемой Mobile Ads SDK.

Тот же ключ приложения

Google Mobile Ads SDK версии 8.3.0 представляеттот же ключ приложения, который поможет вам показывать более релевантную и персонализированную рекламу с использованием данных, собранных из ваших приложений.

Тот же ключ приложения включен по умолчанию, но вы можете отключить его с помощью следующего API.

Быстрый

@import GoogleMobileAds

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

Цель-C

@import GoogleMobileAds;

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

Регулятор громкости видеорекламы

Если в вашем приложении есть собственные регуляторы громкости (например, пользовательская громкость музыки или звуковых эффектов), раскрытие громкости приложения в Google Mobile Ads SDK позволяет видеообъявлениям учитывать настройки громкости приложения. Это гарантирует, что пользователи получат видеообъявления с ожидаемой громкостью звука.

Громкость устройства, управляемая с помощью кнопок громкости или ползунка громкости на уровне ОС, определяет громкость аудиовыхода устройства. Однако приложения могут независимо регулировать уровни громкости относительно громкости устройства, чтобы адаптировать звук. Вы можете сообщить об относительном объеме приложения в Google Mobile Ads SDK, установив свойство applicationVolume . Допустимые значения громкости рекламы находятся в диапазоне от 0,0 (без звука) до 1,0 (текущая громкость устройства). Вот пример того, как сообщить относительный объем приложения в SDK:

Быстрый

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

Цель-C

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

Чтобы сообщить Google Mobile Ads SDK, что громкость приложения отключена, задайте свойство applicationMuted , как показано ниже:

Быстрый

GADMobileAds.sharedInstance().applicationMuted = true

Цель-C

GADMobileAds.sharedInstance.applicationMuted = YES;

По умолчанию applicationVolume установлено значение 1 (текущий объем устройства), а applicationMuted установлено значение NO .

Аудиосессии

Аудиосессии позволяют вам сообщить системе о ваших намерениях в отношении звукового поведения вашего приложения. Дополнительную информацию об аудиосеансах можно найти в Руководстве Apple по программированию аудиосеансов . Доступные параметры для управления звуком Google Mobile Ads SDK — через свойство audioVideoManager .

Если вы не используете звук в своем приложении, вам не нужно использовать эти API. Google Mobile Ads SDK автоматически управляет категорией аудиосеанса при воспроизведении аудио. Если вы воспроизводите звук в своем приложении и хотите более жестко контролировать, как и когда Google Mobile Ads SDK воспроизводит звук, вам могут помочь эти API.

В диспетчере аудио-видео можно установить для свойства audioSessionIsApplicationManaged значение YES , если вы хотите взять на себя ответственность за управление категорией аудиосеанса самостоятельно.

Если вы будете управлять категорией сеанса аудио, вам следует реализовать GADAudioVideoManagerDelegate и установить свойство delegate в диспетчере аудио-видео, чтобы получать уведомления о событиях воспроизведения видео и аудио в рекламе. Затем вы должны изменить категорию аудиосеанса на соответствующую категорию в соответствии с Руководством по программированию аудиосеанса Apple, ссылка на которое приведена выше.

Вот упрощенный пример кода, который показывает рекомендуемый подход, если ваше приложение воспроизводит музыку с использованием вышеуказанных API.

Быстрый

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()
}

Цель-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];
}

Отчеты о сбоях

Mobile Ads SDK проверяет исключения, возникающие в приложении iOS, и записывает их, если они вызваны SDK. Эти исключения собираются, чтобы мы могли предотвратить их появление в будущих версиях SDK.

Отчеты о сбоях включены по умолчанию. Если вы не хотите, чтобы исключения, связанные с SDK, записывались, вы можете отключить эту функцию, вызвав метод disableSDKCrashReporting . Лучше всего вызывать этот метод при запуске приложения:

Быстрый

AppDelegate.swift

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

Цель-C

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

Если у вашего приложения есть особые требования, вы можете установить необязательный NSUserDefaults gad_has_consent_for_cookies . Mobile Ads SDK активирует ограниченную рекламу (LTD) , когда параметр gad_has_consent_for_cookies установлен на ноль.

Быстрый


UserDefaults.standard.set(0, forKey: "gad_has_consent_for_cookies")

Цель-C

NSUserDefaults.standardUserDefaults().setObject(Int(0),
    forKey: "gad_has_consent_for_cookies");