Configuración global

Selecciona la plataforma: Android iOS Unity

La clase MobileAds proporciona parámetros de configuración globales para el SDK de anuncios de Google para dispositivos móviles.

Generar eventos de anuncios en el subproceso principal de Unity

El SDK de anuncios de Google para dispositivos móviles genera eventos en un subproceso diferente del subproceso principal de Unity. Si implementas eventos de anuncios y te comunicas con objetos de Unity, debes sincronizar los eventos del SDK de anuncios para dispositivos móviles con el subproceso principal de Unity.

Sincroniza los eventos de anuncios con el subproceso principal de Unity de forma manual o automática, permitiendo que el SDK de anuncios de Google para dispositivos móviles controle la sincronización.

Sincroniza manualmente los eventos de anuncios

Para sincronizar los eventos de anuncios, usa manualmente el método ExecuteInUpdate en el subproceso principal. Debes usar el método cuando la propiedad RaiseAdEventsOnUnityMainThread está inhabilitada y se interactúa con objetos de UnityEngine.

En el siguiente ejemplo, se registra un subproceso en segundo plano y se ejecuta una acción para interactuar con objetos de UnityEngine:

rewardedAd.OnAdPaid += (AdValue value) =>
{
    // Log the ad value immediately.
    UnityEngine.Debug.Log($"Received ad value of {value.Value} {value.CurrencyCode}.");

    MobileAdsEventExecutor.ExecuteInUpdate(() =>
    {
        // Interact with UnityEngine objects here.
    });
};

Automatiza la sincronización en los eventos de anuncios

Para que el SDK de anuncios de Google para dispositivos móviles sincronice los eventos de anuncios, establece la propiedad MobileAds.RaiseAdEventsOnUnityMainThread en 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;
    }
}

Control de volumen para anuncios de video

Si tu app tiene sus propios controles de volumen, como volúmenes personalizados de música o efectos de sonido, divulgar el volumen de la app al SDK de anuncios de Google para dispositivos móviles permite que los anuncios de video respeten la configuración de volumen de la app. Esto garantiza que los usuarios reciban anuncios de video con el volumen de audio esperado.

El volumen del dispositivo, controlado por medio de los botones de volumen o el control deslizante de volumen del sistema operativo, determina el volumen de la salida de audio del dispositivo. Sin embargo, las apps pueden ajustar de forma independiente los niveles de volumen en relación con el volumen del dispositivo para personalizar la experiencia de audio.

Puedes informar el volumen relativo de la app al SDK de anuncios de Google para dispositivos móviles llamando al método SetApplicationVolume() antes de cargar el anuncio. Los valores de volumen del anuncio válidos varían de 0.0 (silencio) a 1.0 (volumen actual del dispositivo). Este es un ejemplo de cómo informar el volumen relativo de la app al SDK:

// Set app volume to be half of current device volume.
MobileAds.SetApplicationVolume(0.5f);

Para informar al SDK que se silenció el volumen de la app, llama al método SetApplicationMuted() antes de cargar el anuncio:

// Set app to be muted.
MobileAds.SetApplicationMuted(true);

De forma predeterminada, el volumen de la app se establece en 1, el volumen actual del dispositivo, y la app no está silenciada.

Si tu app tiene requisitos especiales, puedes establecer la clave opcional ApplicationPreferences gad_has_consent_for_cookies en cero para habilitar los anuncios limitados (LTD):

// Enable limited ads (LTD)
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);

Minificación de Android

Esta opción de publicación de Unity te permite habilitar la minificación de código Java. Si habilitas la minimización, también deberás crear un archivo ProGuard personalizado para conservar las clases a las que hace referencia el SDK.

  1. Habilita el archivo Proguard personalizado

    Ve a Project Settings > Player > Android > Publishing Settings > Build y selecciona lo siguiente:

    • Archivo Proguard personalizado
  2. Abre el archivo /Assets/Plugins/Android/proguard-user.txt y agrega la siguiente información:

-keep class com.google.** { public *; }

Inhabilita los informes de fallas

El SDK de anuncios de Google para dispositivos móviles recopila informes de fallas para fines de depuración y análisis. Puedes inhabilitar estos informes de fallas con el siguiente código. En las siguientes secciones, se describe cómo inhabilitar los informes de fallas en Android y iOS.

Android

Agrega la etiqueta <meta-data> con DISABLE_CRASH_REPORTING configurado como true en el archivo AndroidManifest.xml de tu app:

<manifest>
   <application>
       <meta-data
           android:name="com.google.android.gms.ads.flag.DISABLE_CRASH_REPORTING"
           android:value="true" />
   </application>
</manifest>

iOS

Llama al método DisableSDKCrashReporting para inhabilitar los informes de fallas en iOS:

void Awake() {
  MobileAds.DisableSDKCrashReporting();
}

Obtén la versión del complemento de Unity

Para obtener la versión del SDK de Unity, ejecuta lo siguiente:

// Get the unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());

Obtén la versión de la plataforma

El SDK de anuncios de Google para dispositivos móviles de Unity depende de los SDKs de las plataformas de Android y iOS. Para obtener la versión del SDK de la plataforma, ejecuta el siguiente comando:

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