Configurações globais

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

A classe MobileAds fornece configurações globais para o Plug-in dos Anúncios para Dispositivos Móveis do Google para Unity.

Gerar eventos de anúncio na linha de execução principal do Unity

O Plug-in dos Anúncios para Dispositivos Móveis do Google para Unity gera eventos em uma linha de execução diferente da principal do Unity. Se você implementar eventos de anúncio e interagir com objetos do Unity, será necessário sincronizar os eventos do plug-in dos anúncios para dispositivos móveis do Google para Unity com a linha de execução principal do Unity.

Sincronize os eventos de anúncio com a linha de execução principal do Unity manualmente ou automaticamente, deixando que o Plug-in dos Anúncios para Dispositivos Móveis do Google para Unity cuide da sincronização.

Recomendado: sincronizar manualmente os eventos de anúncios

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 o plug-in dos anúncios para dispositivos móveis do Google para Unity 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 plug-in dos anúncios para dispositivos móveis do Google para Unity 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 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.

Você pode informar o volume relativo do app ao Plug-in dos Anúncios para Dispositivos Móveis do Google para Unity 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 minimizaçã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 plug-in dos anúncios para dispositivos móveis do Google para Unity 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 plug-in dos Anúncios para Dispositivos Móveis do Google para Unity depende dos SDKs da plataforma Android e iOS. Para saber a versão do SDK da plataforma, execute o seguinte:

// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());