La clase MobileAds
proporciona la configuración global del SDK de anuncios de Google para dispositivos móviles.
Cómo 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 al subproceso principal de Unity. Si implementas eventos de anuncios y también interactúas con objetos de Unity, debes sincronizar los eventos del SDK de anuncios para dispositivos móviles con el subproceso principal de Unity.
Si deseas que el SDK de anuncios para dispositivos móviles controle este problema de subprocesos por ti, configura MobileAds.RaiseAdEventsOnUnityMainThread
como true
. Esto obliga al SDK a generar todos los eventos y devoluciones de llamada en el subproceso principal de Unity.
...
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. De esta manera, se 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 adaptar la experiencia de audio.
Para informar el volumen relativo de la app al SDK de anuncios de Google para dispositivos móviles, llama al método SetApplicationVolume()
. Los valores válidos del volumen del anuncio varían de 0.0
(silencioso) 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, usa el método SetApplicationMuted()
:
// 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.
Consentimiento para cookies
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);
Reducción de Android
Esta opción de publicación de Unity te permite habilitar la reducción de código Java. Si habilitas la reducción, también deberás crear un archivo ProGuard personalizado para conservar las clases a las que hace referencia el SDK.
Habilita el archivo Proguard personalizado
Ve a Project Settings > Player > Android > Publishing Settings > Build y selecciona lo siguiente:
- Archivo Proguard personalizado
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 con 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
establecida en 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();
}