Klasa GADMobileAds zawiera ustawienia globalne, które pozwalają kontrolować niektóre
informacje zbierane przez Google Mobile Ads SDK.
Sterowanie głośnością reklam wideo
Jeśli aplikacja ma własne elementy sterujące głośnością, np. głośność niestandardowej muzyki lub efektów dźwiękowych, ujawnienie głośności aplikacji pakietowi Google Mobile Ads SDK umożliwi reklamom wideo dostosowanie się do ustawień głośności aplikacji. Dzięki temu użytkownicy będą mogli oglądać reklamy wideo z oczekiwaną głośnością.
Głośność 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ć poziom głośności względem głośności urządzenia, aby dostosować wrażenia dźwiękowe.
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 zgłosić względną głośność aplikacji do Google Mobile Ads SDK przez
ustawienie właściwości applicationVolume. Prawidłowe wartości głośności reklamy mieszczą się w zakresie od 0.0 (cisza) do 1.0 (bieżąca głośność urządzenia). Oto przykład zgłaszania względnej głośności aplikacji do pakietu 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;
...
}
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ć Google Mobile Ads SDK że głośność aplikacji została
wyciszona, ustawiając właściwość applicationMuted
Swift
MobileAds.shared.applicationMuted = true
Objective-C
GADMobileAds.sharedInstance.applicationMuted = YES;
Domyślnie właściwość applicationVolume jest ustawiona na 1 (bieżąca głośność urządzenia), a właściwość applicationMuted jest ustawiona na NO.
Reklamy natywne
Instrukcje dotyczące sterowania ustawieniami wyciszenia znajdziesz w artykule
GADVideoOptions. W przypadku reklam natywnych nie ma obsługi niestandardowego sterowania głośnością.
Sesje audio
Sesje audio pozwalają poinformować system o intencjach dotyczących zachowania dźwięku w aplikacji. Dodatkowe informacje o sesjach audio znajdziesz w
przewodniku programowania sesji audio
firmy Apple.
Dostępne opcje zarządzania Google Mobile Ads SDK dźwiękiem są dostępne za pomocą
właściwości
audioVideoManager.
Jeśli w aplikacji nie używasz dźwięku, nie musisz korzystać z tych interfejsów API. Google Mobile Ads SDK 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 Google Mobile Ads SDK odtwarza dźwięk, możesz skorzystać z tych interfejsów API.
Jeśli chcesz samodzielnie zarządzać kategorią sesji audio, możesz ustawić właściwość
audioSessionIsApplicationManaged
w menedżerze audio i wideo na YES.
Jeśli chcesz zarządzać kategorią sesji audio, możesz zaimplementować
GADAudioVideoManagerDelegate
i ustawić właściwość delegate
w menedżerze audio i wideo, aby otrzymywać powiadomienia o zdarzeniach odtwarzania wideo i audio w reklamach. Następnie zmień kategorię sesji audio na
odpowiednią kategorię zgodnie z przewodnikiem programowania sesji audio firmy Apple
Guide.
Oto uproszczony przykład kodu, który pokazuje zalecane podejście, jeśli aplikacja odtwarza muzykę, korzystając z powyższych interfejsów API:
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];
}
Zgłaszanie awarii
Google Mobile Ads SDK sprawdza wyjątki występujące w aplikacji na iOS i rejestruje je, jeśli zostały spowodowane przez pakiet SDK. Te wyjątki są następnie rozwiązywane w przyszłych 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 moment na wywołanie tej metody to uruchomienie aplikacji:
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
Ustawienia zgody na stosowanie plików cookie
Jeśli Twoja aplikacja ma specjalne wymagania, możesz ustawić opcjonalny
NSUserDefaults
gad_has_consent_for_cookies. Google Mobile Ads SDK włącza
ograniczone wyświetlanie reklam (LTD)
jeśli preferencja gad_has_consent_for_cookies jest ustawiona na 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");