Impostazioni globali

Seleziona la piattaforma: Android iOS Unity

La classe GADMobileAds fornisce impostazioni globali per controllare determinate informazioni raccolte dall'SDK Google 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 riceveranno annunci video con il volume audio previsto.

Il volume del dispositivo, controllato tramite i tasti 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 in modo indipendente i livelli di volume rispetto al volume del dispositivo per personalizzare l'esperienza audio.

Per i formati degli annunci App Open, Banner, Interstitial, con premio e interstitial con premio, puoi segnalare il volume relativo dell'app 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 del dispositivo corrente). Ecco un esempio di come segnalare il volume relativo dell'app all'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;
  ...
}

Per i formati degli annunci App Open, 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

MobileAds.shared.applicationMuted = true

Objective-C

GADMobileAds.sharedInstance.applicationMuted = YES;

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

Annunci nativi

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

Sessioni audio

Le sessioni audio ti consentono di esprimere al sistema le tue intenzioni in merito 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 la gestione dell'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 di come e quando l'SDK Google Mobile Ads riproduce l'audio, puoi utilizzare queste API.

In Audio Video Manager, 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 Audio Video Manager per ricevere notifiche degli eventi di riproduzione di video e audio degli annunci. Dopodiché, devi modificare la categoria della sessione audio in base alla categoria pertinente secondo la guida alla programmazione delle sessioni audio di Apple.

Di seguito è riportato un esempio di codice semplificato che mostra l'approccio consigliato se la tua app riproduce musica, utilizzando le API sopra indicate:

Swift

func setUp() {
  MobileAds.shared.audioVideoManager.delegate = self
  MobileAds.shared.audioVideoManager.audioSessionIsApplicationManaged = false
}

// MARK: - GADAudioVideoManagerDelegate
func audioVideoManagerWillPlayAudio(_ audioVideoManager: GADAudioVideoManager) {
  // The Google 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 Google 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 {
  // Google 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 {
    // Google 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 esamina 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.

La segnalazione degli arresti anomali è attivata per impostazione predefinita. Se non vuoi che vengano registrate eccezioni relative all'SDK, puoi disattivare questa funzionalità chiamando il metodo disableSDKCrashReporting. Il momento migliore per chiamare questo metodo è all'avvio dell'app:

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

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");