Ustawienia globalne

Klasa GADMobileAds udostępnia ustawienia globalne umożliwiające kontrolowanie niektórych informacji zbieranych przez pakiet SDK do reklam mobilnych.

Kontrolowanie głośności reklam wideo

Jeśli aplikacja ma własną regulację głośności, np. głośność niestandardowej muzyki lub efektów dźwiękowych, ujawnienie głośności aplikacji pakietowi SDK do reklam mobilnych Google umożliwia reklamom wideo dostosowanie się do ustawień głośności aplikacji. Dzięki temu użytkownicy będą oglądać reklamy wideo z zamierzonym poziomem głośności.

Głośność wyjścia audio urządzenia, kontrolowana za pomocą przycisków głośności lub suwaka głośności na poziomie systemu operacyjnego, określa głośność wyjścia audio urządzenia. Aplikacje mogą jednak niezależnie dostosowywać poziomy głośności w zależności od głośności urządzenia, aby dostosować jakość dźwięku.

W przypadku formatów reklam typu Otwarcie aplikacji, Baner, Reklama pełnoekranowa, Reklama z nagrodą i Reklama pełnoekranowa z nagrodą możesz zgłaszać względną liczbę aplikacji do pakietu SDK do reklam mobilnych Google, ustawiając właściwość applicationVolume. Prawidłowe wartości głośności reklam mieszczą się w zakresie od 0.0 (bez dźwięku) do 1.0 (obecna głośność urządzenia). Oto przykład raportowania względnej liczby aplikacji do pakietu 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;
  ...
}

W przypadku formatów reklam typu Otwarcie aplikacji, Baner, Reklama pełnoekranowa, Reklama z nagrodą i Reklama pełnoekranowa z nagrodą możesz poinformować pakiet SDK do reklam mobilnych Google, że głośność aplikacji została wyciszona, ustawiając właściwość applicationMuted:

Swift

GADMobileAds.sharedInstance().applicationMuted = true

Objective-C

GADMobileAds.sharedInstance.applicationMuted = YES;

Domyślnie applicationVolume ma wartość 1 (bieżąca głośność urządzenia), a applicationMuted – wartość NO.

Reklamy natywne

Instrukcje dotyczące ustawień wyciszania znajdziesz w artykule GADVideoOptions. Niestandardowa głośność nie jest dostępna.

Sesje audio

Sesje audio umożliwiają określenie systemu Twojego zamiaru dotyczącego zachowania audio aplikacji. Dodatkowe informacje o sesjach audio znajdziesz w przewodniku Apple dotyczącym programowania sesji audio. Dostępne opcje zarządzania dźwiękiem w pakiecie SDK do reklam mobilnych Google to: audioVideoManager.

Jeśli w aplikacji nie używasz dźwięku, nie musisz korzystać z tych interfejsów API. Gdy odtwarzana jest ścieżka dźwiękowa, pakiet SDK do reklam mobilnych Google automatycznie zarządza kategorią sesji audio. Jeśli odtwarzasz dźwięk w aplikacji i chcesz mieć większą kontrolę nad tym, jak i kiedy pakiet SDK do reklam mobilnych Google odtwarza dźwięk, możesz używać tych interfejsów API.

Jeśli chcesz samodzielnie zarządzać kategorią sesji audio, w Menedżerze filmów z dźwiękiem możesz ustawić właściwość audioSessionIsApplicationManaged na YES.

Jeśli chcesz zarządzać kategorią sesji audio, możesz zaimplementować GADAudioVideoManagerDelegate i ustawić w Menedżerze treści audio właściwość delegate, aby otrzymywać powiadomienia o zdarzeniach odtwarzania reklam wideo i audio. Następnie zmień kategorię sesji audio na odpowiednią kategorię zgodnie z przewodnikiem Apple dotyczącym programowania sesji audio.

Oto uproszczony przykładowy kod, który pokazuje zalecaną metodę, jeśli Twoja aplikacja odtwarza muzykę, korzystając z wymienionych powyżej interfejsów API:

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

Zgłaszanie awarii

Pakiet SDK do reklam mobilnych Google sprawdza wyjątki występujące w aplikacji na iOS i zapisuje je, jeśli zostały spowodowane przez ten pakiet. Te wyjątki są następnie rozwiązywane w kolejnych wersjach pakietu SDK.

Funkcja zgłaszania awarii jest domyślnie włączona. Jeśli nie chcesz, aby wyjątki związane z pakietem SDK były rejestrowane, możesz wyłączyć tę funkcję, wywołując metodę disableSDKCrashReporting. Najlepszy czas na wywołanie tej metody to moment uruchamiania aplikacji:

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

Jeśli Twoja aplikacja ma specjalne wymagania, możesz ustawić opcjonalne ustawienie NSUserDefaults.gad_has_consent_for_cookies Pakiet SDK do reklam mobilnych Google umożliwia: ograniczone wyświetlanie reklam (LTD) jeśli preferencja gad_has_consent_for_cookies ma wartość 0.

Swift

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

Objective-C

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