Configurações globais

Selecione a plataforma: Android (Beta) Novo Android iOS Unity

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.

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.

  1. Ativar arquivo Proguard personalizado

    Acesse Project Settings > Player > Android > Publishing Settings > Build e selecione:

    • Arquivo Proguard personalizado
  2. Abra o arquivo /Assets/Plugins/Android/proguard-user.txt e 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());