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 contrôle du volume (telles que des volumes de musique ou d'effet audio personnalisés), la communication du volume de l'application au SDK Google Mobile Ads permet aux annonces vidéo de respecter les paramètres de volume de l'application. Elles permettent de s'assurer que les utilisateurs verront les annonces vidéo avec le volume audio prévu.

Le volume de l'appareil, contrôlé via les boutons de volume ou le curseur de volume au niveau de l'OS, 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 "Ouverture d'application", "Bannière", "Interstitiel", "Avec récompense" et "Interstitiel avec récompense", vous pouvez indiquer le volume relatif de l'application au SDK Google Mobile Ads en définissant la propriété applicationVolume. Les valeurs valides du volume de l'annonce sont comprises entre 0.0 (silencieux) et 1.0 (volume actuel de l'appareil). Voici un exemple de la façon de signaler le volume relatif de l'application au SDK :

Swift

func viewDidLoad() {
  super.viewDidLoad()
  // Set app volume to be half of the current device volume.
  MobileAds.shared.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 "Ouverture d'application", "Bannière", "Interstitiel", "Avec récompense" et "Interstitiel avec récompense", vous pouvez indiquer au SDK Google Mobile Ads que le volume de l'application a été coupé en définissant la propriété applicationMuted :

Swift

MobileAds.shared.applicationMuted = true

Objective-C

GADMobileAds.sharedInstance.applicationMuted = YES;

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

Annonces natives

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

Sessions audio

Les sessions audio vous permettent d'indiquer au système vos intentions concernant le comportement audio de votre application. Pour en savoir plus sur les sessions audio, consultez le guide de programmation des sessions audio d'Apple. Les options disponibles pour gérer l'audio du SDK Google Mobile Ads sont accessibles via 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 diffusez de l'audio dans votre application et que vous souhaitez mieux contrôler comment et quand le SDK Google Mobile Ads diffuse de l'audio, vous pouvez utiliser ces API.

Dans le gestionnaire audio/vidéo, vous pouvez définir la propriété audioSessionIsApplicationManaged sur YES si vous souhaitez gérer vous-même 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 sur le gestionnaire audio et vidéo pour être averti des événements de lecture d'annonces vidéo et audio. Vous devez ensuite modifier la catégorie de session audio pour la remplacer par la catégorie appropriée, conformément au Guide de programmation des sessions audio d'Apple.

Voici un exemple de code simplifié qui montre l'approche recommandée si votre application lit de la musique, en utilisant les API ci-dessus :

Swift

func setUp() {
  MobileAds.shared.audioVideoManager.delegate = self
  MobileAds.shared.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.shared.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.shared.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 sont ensuite traitées dans les futures versions du SDK.

L'envoi de rapports d'erreur est activé 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 au lancement de l'application :

Swift

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

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

    MobileAds.shared.disableSDKCrashReporting()
    return true
  }
}

Objective-C

@import GoogleMobileAds;

@implementation AppDelegate

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

  [GADMobileAds disableSDKCrashReporting];
  return YES;
}

@end

Si votre application a des exigences particulières, vous pouvez définir l'option NSUserDefaults gad_has_consent_for_cookies. Le SDK Google Mobile Ads permet d'afficher des annonces limitées 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");