Ustawienia globalne

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

Regulacja 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), podanie głośności aplikacji w pakiecie SDK do reklam mobilnych Google umożliwi wyświetlanie reklam wideo zgodnie z ustawieniami głośności aplikacji. Dzięki temu użytkownicy będą widzieć reklamy wideo z oczekiwaną głośnością dźwięku.

Głośność urządzenia, regulowana 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 odpowiednio dostosować dźwięki.

W przypadku formatów reklam wyświetlanych przy otwarciu aplikacji, banerów, reklam pełnoekranowych, reklam z nagrodą i reklam pełnoekranowych z nagrodą możesz rejestrować w pakiecie SDK do reklam mobilnych Google względną liczbę aplikacji, ustawiając właściwość applicationVolume. Prawidłowe wartości w zakresie liczby reklam od 0.0 (wyciszone) do 1.0 (aktualna głośność na urządzeniu). Oto przykład, jak zgłosić względną liczbę aplikacji 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 wyświetlanych przy otwarciu aplikacji, banerów, reklam pełnoekranowych, reklam z nagrodą i reklam pełnoekranowych 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żącą głośność urządzenia), a applicationMuted ma wartość NO.

Reklamy natywne

Instrukcje konfigurowania ustawień wyciszania znajdziesz w sekcji GADVideoOptions. Reklamy natywne nie obsługują niestandardowej regulacji głośności.

Sesje audio

Sesje audio umożliwiają Ci wyrażenie dla systemu zamiarów dotyczących działania aplikacji pod kątem dźwięku. Więcej informacji o sesjach audio znajdziesz w przewodniku Apple Audio Session Programming Guide. Dostępne opcje zarządzania dźwiękiem w pakiecie SDK do reklam mobilnych Google są dostępne za pomocą usługi audioVideoManager.

Jeśli nie używasz w aplikacji dźwięku, nie musisz używać tych interfejsów API. Pakiet SDK do reklam mobilnych Google automatycznie zarządza kategorią sesji audio podczas odtwarzania dźwięku. 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 wykorzystać te interfejsy API.

W Menedżerze filmów audio możesz ustawić wartość właściwości audioSessionIsApplicationManaged na YES, jeśli chcesz samodzielnie zarządzać kategorią sesji audio.

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

Oto uproszczony przykładowy kod pokazujący, jak korzystać z powyższych interfejsów API w przypadku, gdy aplikacja odtwarza muzykę:

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 rejestruje je, jeśli zostały one spowodowane przez pakiet SDK. Wyjątki te zostaną uwzględnione w kolejnych wersjach pakietu SDK.

Zgłaszanie awarii jest domyślnie włączone. Jeśli nie chcesz, aby wyjątki dotyczące pakietu SDK były rejestrowane, możesz wyłączyć tę funkcję, wywołując metodę disableSDKCrashReporting. Najlepiej jest wywoływać tę metodę, gdy aplikacja się uruchamia:

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 aplikacja ma specjalne wymagania, możesz ustawić opcjonalną właściwość NSUserDefaults gad_has_consent_for_cookies. Pakiet SDK do reklam mobilnych Google włącza ograniczenie wyświetlania reklam o ile ustawienie gad_has_consent_for_cookies ma wartość 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");