Paramètres globaux

La classe GADMobileAds fournit des paramètres généraux permettant de contrôler certaines informations collectées par le SDK Mobile Ads.

Contrôle du volume des annonces vidéo

Si votre application dispose de ses propres commandes de volume, telles que des volumes de musique ou d'effets sonores personnalisés, divulguer le volume de l'application au SDK Google Mobile Ads permet aux annonces vidéo de respecter les paramètres de volume de l'application. Cela permet de s'assurer que les utilisateurs reçoivent les annonces vidéo avec le volume audio attendu.

Le volume de l'appareil, contrôlé via les boutons de volume ou le curseur de volume au niveau du système d'exploitation, détermine le volume de la sortie audio de l'appareil. Toutefois, les applications peuvent ajuster indépendamment les niveaux de volume par rapport au volume de l'appareil pour personnaliser l'expérience audio.

Pour les formats d'annonces à l'ouverture, de bannière, d'interstitiel, d'annonce avec récompense et d'annonce interstitielle avec récompense, vous pouvez générer des rapports sur le volume relatif de l'application au SDK Google Mobile Ads en définissant la propriété applicationVolume. Les valeurs valides pour le volume d'annonces sont comprises entre 0.0 (silencieux) et 1.0 (volume actuel de l'appareil). Voici un exemple de rapport sur le volume d'application relatif au 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;
  ...
}

Pour les formats d'annonces à l'ouverture, de bannières, interstitielles, avec récompense et interstitielles avec récompense, vous pouvez informer le SDK Google Mobile Ads que le volume de l'application a été coupé en définissant la propriété applicationMuted:

Swift

GADMobileAds.sharedInstance().applicationMuted = true

Objective-C

GADMobileAds.sharedInstance.applicationMuted = YES;

Par défaut, applicationVolume est défini sur 1 (volume actuel de l'appareil) et applicationMuted sur NO.

Annonces natives

Pour savoir comment contrôler les paramètres de désactivation du son, consultez GADVideoOptions. Le contrôle personnalisé du volume n'est pas disponible pour les annonces natives.

Sessions audio

Les sessions audio vous permettent d'exprimer au système vos intentions concernant le comportement audio de votre application. Vous trouverez des informations supplémentaires sur les sessions audio dans le Guide de programmation des sessions audio d'Apple. Les options disponibles pour gérer les contenus audio du SDK Google Mobile Ads se trouvent dans la propriété audioVideoManager.

Si vous n'utilisez pas de contenu audio dans votre application, vous n'avez pas besoin d'utiliser ces API. Le SDK Google Mobile Ads gère automatiquement la catégorie de session audio lorsqu'il lit du contenu audio. Si vous lisez du contenu audio dans votre application et que vous souhaitez contrôler plus précisément quand et comment le SDK Google Mobile Ads lit du contenu audio, vous pouvez utiliser ces API.

Dans le gestionnaire de vidéos audio, vous pouvez définir la propriété audioSessionIsApplicationManaged sur YES si vous souhaitez être responsable de la gestion de la catégorie de session audio.

Si vous souhaitez gérer la catégorie de session audio, vous pouvez implémenter GADAudioVideoManagerDelegate et définir la propriété delegate dans le gestionnaire de vidéos audio afin d'être informé des événements de lecture des annonces vidéo et audio. Vous devez ensuite remplacer la catégorie de session audio par la catégorie appropriée, conformément au Guide de programmation de sessions audio d'Apple.

Voici un exemple de code simplifié qui illustre l'approche recommandée si votre application lit de la musique, à l'aide des API ci-dessus:

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

Création de rapports d'erreur

Le SDK Google Mobile Ads inspecte les exceptions qui se produisent dans une application iOS et les enregistre si elles ont été causées par le SDK. Ces exceptions seront ensuite traitées dans les futures versions du SDK.

Les rapports d'erreur sont activés par défaut. Si vous ne souhaitez pas que les exceptions liées au SDK soient enregistrées, vous pouvez désactiver cette fonctionnalité en appelant la méthode disableSDKCrashReporting. Le meilleur moment pour appeler cette méthode est le lancement de l'application:

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 votre application présente des exigences particulières, vous pouvez définir la gad_has_consent_for_cookies NSUserDefaults (facultative). Le SDK Google Mobile Ads active les annonces limitées (LTD) si la préférence gad_has_consent_for_cookies est définie sur zéro.

Swift

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

Objective-C

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