A classe GADMobileAds
fornece configurações globais para controlar determinadas
informações coletadas pelo SDK dos anúncios para dispositivos móveis.
Controle de volume do anúncio em vídeo
Se o app tiver controles de volume próprios, como ajustes personalizados de música ou efeitos sonoros, a divulgação do volume do app ao SDK dos anúncios para dispositivos móveis do Google permite que os anúncios em vídeo respeitem as configurações de volume do app. Isso garante que os usuários recebam anúncios em vídeo no volume esperado.
O volume do dispositivo, controlado por botões de volume ou pelo controle deslizante de volume no nível do SO, determina o volume da saída de áudio do dispositivo. No entanto, os apps podem ajustar de forma independente os níveis de volume em relação ao volume do dispositivo para personalizar a experiência de áudio.
Para formatos de anúncio de abertura de app, banner, intersticial, premiado e intersticial premiado,
é possível informar o volume relativo do app ao SDK dos anúncios para dispositivos móveis do Google
definindo a propriedade applicationVolume
. Os valores válidos de volume de anúncio variam de
0.0
(silencioso) a 1.0
(volume atual do dispositivo). Confira um exemplo de como
relatar o volume relativo do app ao 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;
...
}
Para formatos de anúncio de abertura de app, banner, intersticial, premiado e intersticial premiado,
é possível informar ao SDK dos anúncios para dispositivos móveis do Google que o volume do app foi
desativado definindo a propriedade applicationMuted
:
Swift
GADMobileAds.sharedInstance().applicationMuted = true
Objective-C
GADMobileAds.sharedInstance.applicationMuted = YES;
Por padrão, applicationVolume
é definido como 1
(o volume atual do dispositivo)
e applicationMuted
é definido como NO
.
Anúncios nativos
Consulte
GADVideoOptions
para ver instruções sobre como controlar as configurações de silenciamento. Os anúncios nativos não têm
suporte para controle de volume personalizado.
Sessões de áudio
As sessões de áudio permitem que você expresse ao sistema suas intenções para o comportamento
de áudio do app. Mais informações sobre sessões de áudio podem ser encontradas no
Audio Session Programming Guide da Apple.
As opções disponíveis para gerenciar o áudio do SDK dos anúncios para dispositivos móveis do Google estão na
propriedade
audioVideoManager
.
Se você não usa áudio no app, não precisa usar essas APIs. O SDK dos anúncios para dispositivos móveis do Google gerencia automaticamente a categoria da sessão de áudio quando ela reproduz o áudio. Se você reproduz áudio no seu aplicativo e quer ter mais controle sobre como e quando o SDK dos anúncios para dispositivos móveis do Google reproduz áudio, use essas APIs.
No gerenciador de áudio e vídeo, é possível definir a propriedade
audioSessionIsApplicationManaged
como YES
se você quiser assumir a responsabilidade de gerenciar a categoria de sessão
de áudio.
Se você quiser gerenciar a categoria da sessão de áudio, implemente GADAudioVideoManagerDelegate
e defina a propriedade delegate
no gerenciador de vídeo de áudio para receber notificações sobre eventos de reprodução de vídeo e áudio de anúncios. Em seguida, mude a categoria da sessão de áudio para a
categoria relevante de acordo com o Guia de programação da sessão de áudio
da Apple.
Confira um exemplo de código simplificado que mostra a abordagem recomendada se o app toca música usando as APIs acima:
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];
}
Crash reporting
O SDK dos anúncios para dispositivos móveis do Google inspeciona exceções que ocorrem em um app iOS e as registra se forem causadas pelo SDK. Essas exceções são resolvidas em versões futuras do SDK.
O relatório de erros é ativado por padrão. Se você não quiser que as exceções relacionadas ao SDK
sejam gravadas, desative esse recurso chamando o
método disableSDKCrashReporting
. O melhor momento para chamar esse método é quando
o app é iniciado:
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
Consentimento para as configurações de cookies
Se o app tiver requisitos especiais, defina o
NSUserDefaults
gad_has_consent_for_cookies
opcional. O SDK dos anúncios para dispositivos móveis do Google permite
anúncios limitados (LTD)
se a preferência gad_has_consent_for_cookies
estiver definida como 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");