Impostazioni globali

La classe GADMobileAds fornisce impostazioni globali per il controllo di determinate informazioni raccolte dall'SDK Mobile Ads.

Controllo del volume degli annunci video

Se la tua app ha i propri controlli del volume, ad esempio volume personalizzato di musica o effetti sonori, la divulgazione del volume dell'app all'SDK Google Mobile Ads consente agli annunci video di rispettare le impostazioni di volume dell'app. In questo modo, gli utenti vedranno gli annunci video con il volume audio previsto.

Il volume del dispositivo, controllato tramite i pulsanti del volume o il cursore del volume a livello di sistema operativo, determina il volume dell'uscita audio del dispositivo. Tuttavia, le app possono regolare i livelli di volume in modo indipendente in base al volume del dispositivo per personalizzare l'esperienza audio.

Per i formati di annunci App Open, Banner, Interstitial, Con premio e Interstitial con premio, puoi segnalare il volume di app relativo all'SDK Google Mobile Ads impostando la proprietà applicationVolume. I valori validi del volume degli annunci sono compresi tra 0.0 (silenzioso) e 1.0 (volume attuale del dispositivo). Ecco un esempio di come registrare il volume relativo delle app nell'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;
  ...
}

Per i formati di annunci apertura app, banner, interstitial, con premio e interstitial con premio, puoi comunicare all'SDK Google Mobile Ads che il volume dell'app è stato disattivato impostando la proprietà applicationMuted:

Swift

GADMobileAds.sharedInstance().applicationMuted = true

Objective-C

GADMobileAds.sharedInstance.applicationMuted = YES;

Per impostazione predefinita, applicationVolume è impostato su 1 (il volume corrente del dispositivo) e applicationMuted è impostato su NO.

Annunci nativi

Visita la pagina GADVideoOptions per istruzioni su come controllare le impostazioni di disattivazione dell'audio. Per gli annunci nativi, il controllo del volume personalizzato non è supportato.

Sessioni audio

Le sessioni audio ti consentono di comunicare al sistema le tue intenzioni relative al comportamento audio della tua app. Ulteriori informazioni sulle sessioni audio sono disponibili nella Guida alla programmazione delle sessioni audio di Apple. Le opzioni disponibili per gestire l'audio dell'SDK Google Mobile Ads sono tramite la proprietà audioVideoManager.

Se non utilizzi l'audio nella tua app, non devi utilizzare queste API. L'SDK Google Mobile Ads gestisce automaticamente la categoria della sessione audio quando riproduce l'audio. Se riproduci audio nella tua app e vuoi un controllo più rigoroso su come e quando l'SDK Google Mobile Ads riproduce l'audio, puoi utilizzare queste API.

In Gestione audio e video, puoi impostare la proprietà audioSessionIsApplicationManaged su YES se vuoi assumerti la responsabilità di gestire autonomamente la categoria della sessione audio.

Se vuoi gestire la categoria della sessione audio, puoi implementare GADAudioVideoManagerDelegate e impostare la proprietà delegate in Gestione video audio per ricevere notifiche relative agli annunci, agli eventi di riproduzione video e audio. Dovresti quindi modificare la categoria della sessione audio in quella pertinente in base alla Guida alla programmazione delle sessioni audio di Apple.

Ecco un esempio di codice semplificato che mostra l'approccio consigliato se la tua app riproduce musica utilizzando le API riportate sopra:

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

Report sugli arresti anomali

L'SDK Google Mobile Ads controlla le eccezioni che si verificano in un'app per iOS e le registra se sono state causate dall'SDK. Queste eccezioni vengono poi risolte nelle versioni future dell'SDK.

I report sugli arresti anomali sono abilitati per impostazione predefinita. Se non vuoi che vengano registrate le eccezioni correlate all'SDK, puoi disattivare questa funzionalità chiamando il metodo disableSDKCrashReporting. Il momento migliore per chiamare questo metodo è quando viene avviata l'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

Se la tua app ha requisiti speciali, puoi impostare il valore facoltativo NSUserDefaults gad_has_consent_for_cookies. L'SDK Google Mobile Ads attiva annunci con limitazioni (LTD) se la preferenza gad_has_consent_for_cookies è impostata su zero.

Swift

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

Objective-C

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