A classe MobileAds oferece configurações globais para Google Mobile Ads SDK.
Gerar eventos de anúncio na linha de execução principal do Unity
O Google Mobile Ads SDK gera eventos em uma linha de execução diferente da linha de execução principal do Unity. Se você implementar eventos de anúncio e interagir com objetos do Unity, será necessário sincronizar os eventos Google Mobile Ads SDK com a linha de execução principal do Unity.
Sincronize os eventos de anúncio com a linha de execução principal do Unity de forma manual ou automática, deixando que o Google Mobile Ads SDK cuide da sincronização.
Recomendado: sincronizar manualmente os eventos de anúncio
Para sincronizar eventos de anúncio 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 do 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úncio, 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, divulgar o volume do app para o Google Mobile Ads SDK permite que os anúncios em vídeo respeitem as configurações dele. Isso garante que os usuários recebam anúncios em vídeo com o volume de áudio esperado.
O volume do dispositivo, controlado pelos 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.
É possível informar o volume relativo do app para Google Mobile Ads SDK chamando o método SetApplicationVolume() antes de carregar o anúncio. Os valores válidos de volume de anúncios 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 o uso de cookies
Se o app tiver requisitos especiais, defina a chave opcional
ApplicationPreferences gad_has_consent_for_cookies como zero para ativar os
anúncios limitados
:
// Enable limited ads
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);
Minificação do Android
Com essa opção de publicação do Unity, é possível ativar a minimificaçã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 o arquivo
/Assets/Plugins/Android/proguard-user.txte adicione o seguinte:
-keep class com.google.** { public *; }
Desativar o relatório de falhas
O Google Mobile Ads SDK coleta relatórios de erros para fins de depuração e análise. É possível desativar esse relatório de falhas com o seguinte código. As seções a seguir descrevem como desativar os relatórios de falhas no Android e no iOS.
Android
Adicione a tag <meta-data> com DISABLE_CRASH_REPORTING definido 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 erros no iOS:
void Awake() {
MobileAds.DisableSDKCrashReporting();
}
Receber a versão do plug-in do Unity
Para saber a versão do SDK do Unity, execute o seguinte:
// Get the unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());
Receber versão da plataforma
O Google Mobile Ads SDK para Unity depende dos SDKs da plataforma Android e iOS. Para conferir a versão do SDK da plataforma, execute o seguinte comando:
// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());