Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
Android Studio y Gradle
En estas instrucciones, se supone que usa Android Studio y Gradle. La mayoría de las entradas necesarias AndroidManifest.xml (excepto los permisos de ubicación) y los cambios de ProGuard se agregan automáticamente a la aplicación. Si usas otros sistemas de compilación, los pasos pueden variar.
La mediación le permite vender impresiones de anuncios a través de múltiples redes para generar más ingresos. Esto se inicia mediante el SDK principal (mediador), que llama a uno o varios SDK mediados en un proceso similar a una "cascada". Si el SDK principal no puede mostrar un anuncio por algún motivo, puede iterar en la lista de SDK mediados y ponerse en contacto con ellos en el orden que especifique. Esto continuará hasta que se rellene la impresión o se haya quedado sin SDK mediados.
Entre los motivos para mediar en otro SDK se incluyen los siguientes:
- Para proporcionar una mejor monetización en circunstancias específicas
- Para proporcionar acceso a información, como un identificador de usuario único o el sistema operativo, la ubicación o el identificador del dispositivo
- Algunas redes solo aceptan solicitudes de sus propios SDK, lo que le obliga a usar su SDK para acceder a su demanda
Redes y tipos de medios admitidos
En esta sección se enumeran las redes que admitimos con adaptadores de mediación, así como los tipos de medios que admite cada adaptador. Para cada adaptador, mostramos si el adaptador admite banners, intersticiales, nativo o los tres.
| Adaptador | Versión | Banner | Intersticial | Nativa | Docs |
|---|---|---|---|---|---|
| Google AdMob y DFP | 22.3.0 | Sí | Sí | Sí | Anuncios de Google para móviles - Mediación para Android |
| SmartAdServer | 7.23.0 | Sí | Sí | No | Documentación del SDK de SmartAdServer |
Configuración de Maven
Para mediar en estas redes, necesitará una versión compatible de nuestro SDK y un adaptador de mediación que permita que nuestro SDK se comunique con el SDK de la red. La forma más sencilla de obtener el SDK y los adaptadores es usar Maven desde su build.gradle como se muestra en el ejemplo siguiente. El primer bloque incluye las dependencias del propio SDK. El segundo bloque enumera los adaptadores para mediar en otros SDK. Tenga en cuenta que estos son bloques de nivel superior, no parte del bloque buildscript. Puede incluir o excluir cualquiera de los adaptadores en el segundo bloque. Al incluir un adaptador, se incluye automáticamente el SDK de terceros adecuado (que se descarga de nuestra CDN en el momento de la sincronización de Gradle).
Por último, ten en cuenta que la [9,10) notación significa que cuando se compile la aplicación, se incluirá la última versión del SDK de la serie 9.x. Cuando publicamos una nueva versión del SDK, todo lo que tiene que hacer para obtener la nueva versión es volver a compilar la aplicación.
repositories {
mavenCentral()
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.appnexus.opensdk:appnexus-sdk:[9,10)'
implementation 'com.appnexus.opensdk.mediatedviews:appnexus-googleplay-mediation:[9,10)'
implementation 'com.appnexus.opensdk.mediatedviews:appnexus-smartadserver-mediation:[9,10)'
}
Advertencia
No modifique los archivos de los adaptadores de build.gradle mediación. Esto puede interrumpir la compilación.
Configuración específica de red
Esta sección tiene información sobre cómo configurar los SDK de otras redes para la mediación, incluidos ejemplos de código (cuando se requiere una configuración especial) y vínculos a la documentación del SDK.
AdMob
Nota:
Para el SDK móvil 7.22 o superior, la mediación con la versión de Google Ad Mob requerirá una dependencia explícita de androidx.work:work-runtime:2.7.0 para corregir un error que causa bloqueos de la aplicación en Android S. Para solucionar este error, agrega las siguientes dependencias para el SDK de anuncios de Google Mobile al archivo Gradle a nivel de aplicación de tu módulo:
dependencies {
implementation 'com.google.android.gms:play-services-ads:20.4.0'
// For apps targeting Android 12, add WorkManager dependency.
constraints {
implementation('androidx.work:work-runtime:2.7.0') {
because '''androidx.work:work-runtime:2.1.0 pulled from
play-services-ads has a bug using PendingIntent without
FLAG_IMMUTABLE or FLAG_MUTABLE and will fail in Apps
targeting S+.'''
}
}
}
Advertencia
Se requieren devoluciones de llamada del ciclo de vida
Al mediar banners de AdMob/DFP, debes agregar devoluciones de llamada del ciclo de vida a tu código como se describe en la sección siguiente.
Nota de implementación - Reenvío de devoluciones de llamada del ciclo de vida
Ya que tenemos que reenviar las devoluciones de llamada del ciclo de vida al banner de AdMob/DFP según lo requieran. Para obtener más información sobre los ciclos de vida de actividad, consulte Administración del ciclo de vida de actividad en los documentos de Android.
El SDK permite reenviar devoluciones de llamada del ciclo de vida para las subclases de AdView:BannerAdView and .InterstitialAdView
Se recomienda reenviar las devoluciones de llamada del ciclo de vida para mejorar el rendimiento. Para cualquier persona que medie en banners de AdMob/DFP, es un requisito que se llame, ya que debemos reenviar las devoluciones de llamada del ciclo de vida al banner de AdMob/DFP según lo requieran. Consulte el ejemplo de código a continuación para obtener información sobre los métodos a los que llamar y cuándo.
Para obtener más información sobre los ciclos de vida de actividad, consulte Administración del ciclo de vida de actividad en los documentos de Android.
/**
* To be called by the developer when the fragment/activity's onDestroy() function is called.
*/
abstract public void activityOnDestroy();
/**
* To be called by the developer when the fragment/activity's onPause() function is called.
*/
abstract public void activityOnPause();
/**
* To be called by the developer when the fragment/activity's onResume() function is called.
*/
abstract public void activityOnResume();
Mediación nativa
Nota:
A partir de la versión 5.1 del SDK, se modificó el código del adaptador de mediación nativa de AdMob para admitir el anuncio Google UnifiedNativeAd.
Las siguientes ya no son relevantes y se han eliminado:
AdMobNativeSettings.setEnableAppInstallAd();
AdMobNativeSettings.setEnableContentAd();
Para la mediación nativa, añada el código de inicialización como se describe aquí:
Si tiene previsto usarlo MediaView para mostrar imágenes o vídeo, debe habilitarlo MediaView antes de realizar una solicitud de anuncio. Si no la habilita explícitamente, descargaremos las imágenes por usted y MediaView no rellenaremos las imágenes automáticamente.
AdMobNativeSettings.setEnableMediaView(true);
Si la NativeAdResponse es de AdMob, cree una vista de tipo UnifiedNativeAdView.
private NativeAdRequestListener nativeAdRequestListener = new NativeAdRequestListener() {
@Override
public void onAdLoaded(NativeAdResponse response) {
if (response.getNetworkIdentifier() == NativeAdResponse.Network.ADMOB) {
// Instantiate UnifiedNativeAdView
// Set MediaView - Sets a media view for media content.
// The media content gets loaded on the MediaView, if attached to the layout hierarchy and is registered using the setMediaView(...)
}
}
@Override
public void onAdFailed(ResultCode errorcode) {
}
}
Establecer la palabra clave personalizada
Para pasar la URL de contenido al SDK de Google, la url de contenido debe pasarse como una palabra clave personalizada con el objeto de anuncio del solicitante (BannerAdView, InterstitialAdView, NativeAdRequest). La clave que se va a usar es content_url. A continuación le mostramos un ejemplo:
// Add key content_url with a value (www.appnexus.com).
adView.addCustomKeywords("content_url", "www.appnexus.com");
Para obtener más información sobre el SDK de Google, consulte el SDK de anuncios móviles de Google.
Adaptador de mediación de Google para PPID
El adaptador de mediación de Google admite el ID proporcionado por el editor (PPID). PPID permite a los editores pasar un identificador definido por el editor a Google Ad Manager para admitir la segmentación y los informes publicitarios mejorados.
Establecer el PPID para la mediación de Google
Para configurar el PPID para la mediación de Google, llame al siguiente método proporcionado por el adaptador. El valor PPID se envía a Google Ad Manager con las solicitudes de anuncios.
GooglePlayAdsSettings.setGooglePublisherProvidedId("your-ppid-value");
Nota:
- Establece el PPID antes de realizar cualquier solicitud de anuncio para asegurarte de que se incluya.
- El PPID solo se aplica a la Mediación de Google y no afecta a otras redes mediadas.
Ejemplo
// Set PPID before loading ads
GooglePlayAdsSettings.setGooglePublisherProvidedId("example-ppid-123");
// Proceed with loading ads
SmartAdServer
No se requiere ninguna configuración especial.
Para obtener más información sobre el SDK de SmartAdServer, consulte la documentación de su SDK.
Si tiene previsto admitir dispositivos Huawei que ya no cuentan con los servicios de Google (necesarios para la recuperación del identificador de publicidad), también debe declarar el repositorio de bibliotecas de compatibilidad con Huawei. Para admitir dispositivos Huawei con adaptador SAS, los editores deben agregar lo siguiente en el nivel raíz build.gradle de su proyecto:
// Optional: Huawei services dependencies repository
maven { url '[https://developer.huawei.com/repo/](https://developer.huawei.com/repo/)' }
Advertencia
Intersticiales
Si está utilizando SmartAdServer intersticial, tenga en cuenta que SASInterstitialView no tiene loadAd() métodos correspondientes showAd() a nuestros SDK InterstitialAdViewmóviles.
SASInterstitialView solo tiene el loadAd() método que carga y muestra anuncios solo en una llamada.
Para ser coherentes InterstitialAdView loadAd() con nuestros SDK móviles y InterstitialAdView.showAd() la secuencia de llamadas del método, no mostramos el SASInterstitialView hasta InterstitialAdView.showAd() .
En otras palabras, se espera que la aplicación llame inmediatamente a showAd()InterstitialAdView.onAdLoaded(). Si no, SASInterstitialView no se mostrará.
Configuración de colocación para la mediación intersticial
Use la siguiente configuración de ubicación para la mediación intersticial.
Mediación intersticial
Si desea realizar una mediación intersticial, asegúrese de que su colocación esté con:
- Tamaño: 1x1
- Tipo de medio: intersticial
Mediación intersticial más RTB y/o demanda gestionada
Si desea realizar una mediación intersticial y aceptar RTB o demanda administrada a través de la misma colocación, debe asegurarse de que su ubicación esté con:
- Tamaño: 1x1
- Tipo de medio: intersticial
- Tipo de medio: Banner
Para obtener más instrucciones sobre cómo crear ubicaciones, consulte Crear una ubicación en la documentación de Monetizar.
Para la demanda no mediada, debe pasar los tamaños reales de las creatividades en las llamadas de anuncios mediante el promo_sizes parámetro de etiqueta de ubicación.
Para obtener instrucciones sobre cómo pasar tamaños intersticiales personalizados, consulte "Uso de tamaños intersticiales personalizados" en la documentación de Mostrar intersticiales en Android .
Redes móviles personalizadas
La interfaz de usuario de Xandr tiene compatibilidad integrada con varias redes de anuncios móviles populares. Si quiere mediar en una red que no es compatible, tendrá que:
- Escribir un adaptador de mediación personalizado que permita a nuestro SDK recibir eventos del SDK en el que desea mediar.
- Configure una red móvil personalizada siguiendo las instrucciones de Agregar una red.