Configuración global

La clase GADMobileAds proporciona una configuración global para controlar ciertos la información que recopila el SDK de anuncios para dispositivos móviles.

Control de volumen para anuncios de video

Si tu app tiene sus propios controles de volumen, como la música o los efectos de sonido personalizados de aplicaciones, divulgar el volumen de la aplicación al SDK de anuncios de Google para dispositivos móviles habilita los anuncios de video para respetar la configuración del volumen de las apps. Esto garantiza que los usuarios reciban anuncios de video con los volumen de audio esperado.

El volumen del dispositivo, controlado por los botones de volumen o el control deslizante de volumen del SO determina el volumen de la salida de audio del dispositivo. Sin embargo, las apps pueden Ajusta los niveles de volumen relacionados con el volumen del dispositivo para personalizar el audio una experiencia fluida a los desarrolladores.

Para anuncios de aplicación abierta, banner, intersticial, recompensado o intersticial recompensado formatos con los que puedes informar el volumen relativo de la app al SDK de anuncios de Google para dispositivos móviles configurando la propiedad applicationVolume. Los valores válidos de volumen de anuncios varían entre De 0.0 (silencio) a 1.0 (volumen actual del dispositivo). Aquí hay un ejemplo de cómo informa el volumen relativo de la app al 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;
  ...
}

Para anuncios de aplicación abierta, banner, intersticial, recompensado o intersticial recompensado puede informar al SDK de anuncios de Google para dispositivos móviles que el volumen de la aplicación se se silenció configurando la propiedad applicationMuted:

Swift

GADMobileAds.sharedInstance().applicationMuted = true

Objective-C

GADMobileAds.sharedInstance.applicationMuted = YES;

De forma predeterminada, applicationVolume está configurado en 1 (el volumen actual del dispositivo) y applicationMuted se establece en NO.

Anuncios nativos

Consulta GADVideoOptions para obtener instrucciones sobre cómo controlar la configuración para silenciar. En el caso de los anuncios nativos, no hay compatibilidad con el control de volumen personalizado.

Sesiones de audio

Las sesiones de audio te permiten expresar al sistema tus intenciones con respecto a la app el comportamiento del audio. Puedes encontrar información adicional sobre las sesiones de audio en Programación de sesiones de audio de Apple guía. Las opciones disponibles para administrar el audio del SDK de anuncios de Google para dispositivos móviles son el audioVideoManager propiedad.

Si no usas audio en tu app, no necesitas usar estas APIs. El equipo de El SDK de Mobile Ads administra automáticamente la categoría de la sesión de audio cuando reproduce audio. Si reproduces audio en tu app y quieres controlar mejor cómo y cuándo el SDK de Google Mobile Ads reproduce audio, puedes usar estas APIs.

En el administrador de audio y video, puedes definir la audioSessionIsApplicationManaged propiedad a YES si quieres asumir la responsabilidad de administrar el audio de sesión del usuario.

Si quieres administrar la categoría de la sesión de audio, puedes implementar GADAudioVideoManagerDelegate y establece el delegate propiedad del administrador de audio y video para recibir notificaciones sobre anuncios de audio y video los eventos de reproducción. Luego, debes cambiar la categoría de la sesión de audio a en la categoría relevante según el documento de la Guía de inicio rápido.

Aquí hay una muestra de código simplificada que indica el enfoque recomendado si tu La app reproduce música con las APIs anteriores:

Swift

func setUp() {
  GADMobileAds.sharedInstance().audioVideoManager.delegate = self
  GADMobileAds.sharedInstance().audioVideoManager.audioSessionIsApplicationManaged = 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;
}

#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];
}

Crash Reporting

El SDK de anuncios de Google para dispositivos móviles inspecciona las excepciones que ocurren en una app para iOS y las registra si el SDK las generó. Luego, estas excepciones que se abordarán en versiones futuras del SDK.

El informe de fallas está habilitado de forma predeterminada. Si no quieres excepciones relacionadas con el SDK para que se grabe, puedes inhabilitar esta función llamando al disableSDKCrashReporting. El mejor momento para llamar a este método es cuando se inicia la aplicación:

Swift

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

  func application(_ application: UIApplication,
      didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    GADMobileAds.disableSDKCrashReporting()
    return true
  }
}

Objective-C

@import GoogleMobileAds;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

  [GADMobileAds disableSDKCrashReporting];
  return YES;
}

@end

Si tu app tiene requisitos especiales, puedes definir la configuración NSUserDefaults gad_has_consent_for_cookies El SDK de Google Mobile Ads permite anuncios limitados (LTD) si la preferencia gad_has_consent_for_cookies se establece en cero.

Swift

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

Objective-C

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