La clase GADMobileAds
proporciona una configuración global para controlar cierta 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 volúmenes personalizados de música o efectos de sonido, divulgar el volumen de la app al SDK de anuncios de Google para dispositivos móviles permite que los anuncios de video respeten la configuración de volumen de la app. De esta manera, se garantiza que los usuarios reciban anuncios de video con el volumen de audio esperado.
El volumen del dispositivo, controlado por medio de los botones de volumen o el control deslizante de volumen del sistema operativo, determina el volumen de la salida de audio del dispositivo. Sin embargo, las apps pueden ajustar de forma independiente los niveles de volumen en relación con el volumen del dispositivo para adaptar la experiencia de audio.
En el caso de los formatos de anuncios de aplicación abierta, banner, intersticial, recompensados y intersticiales recompensados, puedes informar el volumen relativo de la app al SDK de anuncios de Google para dispositivos móviles si configuras la propiedad applicationVolume
. Los valores válidos del volumen del anuncio varían de 0.0
(silencioso) a 1.0
(volumen actual del dispositivo). Este es un ejemplo de cómo informar 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;
...
}
En el caso de los formatos de anuncios de apertura de aplicación, banner, intersticial, recompensado y recompensado intersticial, puedes informar al SDK de anuncios de Google para dispositivos móviles que se silenció el volumen de la app configurando la propiedad applicationMuted
:
Swift
GADMobileAds.sharedInstance().applicationMuted = true
Objective-C
GADMobileAds.sharedInstance.applicationMuted = YES;
De forma predeterminada, applicationVolume
se establece 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 de silenciamiento. En el caso de los anuncios nativos, no se admite el control de volumen personalizado.
Sesiones de audio
Las sesiones de audio te permiten expresar al sistema tus intenciones con respecto al comportamiento de audio de tu app. Puedes encontrar información adicional sobre las sesiones de audio en la Guía de programación de sesiones de audio de Apple.
Las opciones disponibles para administrar el audio del SDK de Google Mobile Ads son a través de la propiedad audioVideoManager
.
Si no usas audio en tu app, no necesitas usar estas APIs. El SDK de anuncios de Google para dispositivos móviles administra automáticamente la categoría de sesión de audio cuando reproduce audio. Si reproduces audio en tu app y deseas un control más estricto sobre cómo y cuándo el SDK de anuncios de Google para dispositivos móviles reproduce audio, puedes usar estas APIs.
En el administrador de audio y video, puedes establecer la propiedad audioSessionIsApplicationManaged
en YES
si quieres asumir la responsabilidad de administrar la categoría de sesión de audio por tu cuenta.
Si deseas administrar la categoría de la sesión de audio, puedes implementar GADAudioVideoManagerDelegate
y configurar la propiedad delegate
en el Administrador de audio y video para recibir notificaciones de anuncios de eventos de reproducción de audio y video. Luego, debes cambiar la categoría de la sesión de audio a la categoría relevante según la Guía de programación de sesiones de audio de Apple.
Este es un ejemplo de código simplificado que muestra el enfoque recomendado si tu 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 se producen en una app para iOS y las registra si las ocasiona el SDK. Estas excepciones se abordan en versiones futuras del SDK.
Los informes de fallas están habilitados de forma predeterminada. Si no quieres que se registren excepciones relacionadas con el SDK, puedes inhabilitar esta función llamando al método disableSDKCrashReporting
. El mejor momento para llamar a este método es cuando se inicia la app:
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
Consentimiento para la configuración de cookies
Si tu app tiene requisitos especiales, puedes configurar el gad_has_consent_for_cookies
de NSUserDefaults
opcional. El SDK de anuncios de Google para dispositivos móviles habilita
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");