A classe MobileAds oferece configurações globais para Google Mobile Ads SDK.
Gerar eventos de anúncios na linha de execução principal do Unity
Google Mobile Ads SDK gera eventos em uma linha de execução diferente da principal do Unity. Se você implementar eventos de anúncios e interagir com objetos do Unity, será necessário sincronizar os Google Mobile Ads SDK eventos com a linha de execução principal do Unity.
Sincronize os eventos de anúncios com a linha de execução principal do Unity manualmente ou automaticamente, permitindo que Google Mobile Ads SDK processe a sincronização.
Recomendado: sincronizar eventos de anúncios manualmente
Para sincronizar eventos de anúncios manualmente, use o método ExecuteInUpdate na linha de execução principal. Você precisa usar o método ExecuteInUpdate ao interagir com objetos UnityEngine e enquanto a propriedade RaiseAdEventsOnUnityMainThread estiver desativada.
O exemplo a seguir registra uma linha de execução em segundo plano e executa uma ação para interagir com objetos UnityEngine:
rewardedAd.OnAdPaid += (AdValue value) =>
{
// Log the ad value immediately.
// Place all time-sensitive code outside of ExecuteInUpdate().
UnityEngine.Debug.Log($"Received ad value of {value.Value} {value.CurrencyCode}.");
MobileAdsEventExecutor.ExecuteInUpdate(() =>
{
// Interact with UnityEngine objects here.
// This method is delayed, don't put time sensitive code here.
});
};
Automatizar a sincronização em eventos de anúncios
Para que Google Mobile Ads SDK sincronize eventos de anúncios, defina a propriedade
MobileAds.RaiseAdEventsOnUnityMainThread como true:
...
using GoogleMobileAds.Api;
...
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
public void Start()
{
// When true all events raised by GoogleMobileAds will be raised
// on the Unity main thread. The default value is false.
MobileAds.RaiseAdEventsOnUnityMainThread = true;
}
}
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 para Google Mobile Ads SDK 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 com o volume de áudio 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 os níveis de volume de forma independente em relação ao volume do dispositivo para personalizar a experiência de áudio.
Você pode informar o volume relativo do app ao Google Mobile Ads SDK chamando
o método SetApplicationVolume() antes de carregar o anúncio. Os valores de volume de anúncios válidos variam de 0.0 (silencioso) a 1.0 (volume atual do dispositivo). Confira um exemplo de como informar o volume relativo do app ao SDK:
// Set app volume to be half of current device volume.
MobileAds.SetApplicationVolume(0.5f);
Para informar ao SDK que o volume do app foi silenciado, chame o método SetApplicationMuted() antes de carregar o anúncio:
// Set app to be muted.
MobileAds.SetApplicationMuted(true);
Por padrão, o volume do app é definido como 1, o volume atual do dispositivo, e o app não é silenciado.
Consentimento para cookies
Se o app tiver requisitos especiais, você poderá definir a chave opcional
ApplicationPreferences gad_has_consent_for_cookies como zero para ativar
anúncios limitados
:
// Enable limited ads
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);
Minificação do Android
Essa opção de publicação do Unity permite ativar a minificação de código Java. Se você ativar a minificação, também precisará criar um arquivo ProGuard personalizado para manter as classes referenciadas pelo SDK.
Ativar arquivo ProGuard personalizado
Acesse Project Settings > Player > Android > Publishing Settings > Build, e selecione:
- Arquivo ProGuard personalizado
Abra
/Assets/Plugins/Android/proguard-user.txte adicione o seguinte:
-keep class com.google.** { public *; }
Desativar relatórios de falhas
Google Mobile Ads SDK coleta relatórios de falhas para fins de depuração e análise. Você pode desativar esses relatórios de falhas com o código a seguir. As seções a seguir descrevem como desativar relatórios de falhas no Android e no iOS.
Android
Adicione a tag <meta-data> com DISABLE_CRASH_REPORTING definida como true no
arquivo AndroidManifest.xml do app:
<manifest>
<application>
<meta-data
android:name="com.google.android.gms.ads.flag.DISABLE_CRASH_REPORTING"
android:value="true" />
</application>
</manifest>
iOS
Chame o método DisableSDKCrashReporting para desativar os relatórios de falhas no iOS:
void Awake() {
MobileAds.DisableSDKCrashReporting();
}
Acessar a versão do plug-in do Unity
Para acessar a versão do SDK do Unity, execute o seguinte:
// Get the unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());
Acessar a versão da plataforma
O Google Mobile Ads SDK para Unity depende dos SDKs da plataforma Android e iOS. Para acessar a versão do SDK da plataforma, execute o seguinte:
// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());