Compartir a través de


Solicitud de varios anuncios para Android

Información general

Esta página tiene instrucciones y ejemplos de código para iniciar y configurar .ANMultiAdRequest ANMultiAdRequest permite al usuario usar una única solicitud de etiqueta universal (UTv3) para iniciar varias subastas, cuyos resultados se devuelven en una única respuesta del servidor.

ANMultiAdRequest es una clase concreta y no implementa ninguna interfaz. La clase adopta el tipo y el comportamiento de diferentes AdUnits (banner, nativo, vídeo, etc.) con las mismas especificaciones de cada AdUnit tipo. Las palabras clave personalizadas se pueden asignar a y ANMultiAdRequest las heredará el contenido AdUnits. tiene ANMultiAdRequest un agente de escucha orientado al público que observa para onMultiAdRequestCompleted() o onMultiAdRequestFailed().

Inicialización

Los usuarios pueden seleccionar entre uno de los dos métodos de inicialización. Ambos requieren un memberId y un multiAdRequestListener objeto como argumentos para ANMultiAdRequest poder inicializarse. memberId y multiAdRequestListener solo se puede establecer una vez por instancia. En este momento, se puede establecer un parámetro de id. de publicador opcional. Todos AdUnits deben contener lo mismo memberId que el pasado en el proceso AdUnits de inicialización que contiene placementIds usará el asociado memberId a esa ubicación. Tras una inicialización correcta, se devuelve una ANMultiAdRequest instancia de clase.

Nota:

La MultiAdRequest instancia se rechazará AdUnits con memberId valores distintos de los suyos propios.

Métodos de inicialización

Inicializar con una lista de AdUnits y llamar al load método

Habilita la inicialización y llama al load método con una sola línea de código. La instancia se inicializa con una lista de uno o varios AdUnits. Si se produce un error durante el load ciclo de vida, la clase no se inicializa y se devuelve un objeto nil. Cuando se produce un proceso correcto load , se devuelve una instancia de clase.

Sin id. de publicador

anMultiAdRequest = new ANMultiAdRequest(context, memberId, multiAdRequestListener, loadOnInit, ads);

Con el identificador del publicador

public ANMultiAdRequest(Context context, int memberId, int publisherId, MultiAdRequestListener multiAdRequestListener, boolean loadOnInit, Ad...ads)

Inicialización simple

Esta inicialización básica devuelve una instancia de la clase pero no realiza ninguna acción. La configuración se puede completar mediante métodos y propiedades de clase. El delegado inicializado se establece en a AdUnits medida que se agregan.

Sin id. de publicador

anMultiAdRequest = new ANMultiAdRequest(context, memberId, multiAdRequestListener);

Con el identificador del publicador

public ANMultiAdRequest(Context context, int memberId, int publisherId, MultiAdRequestListener multiAdRequestListener)

Argumentos

Variable Tipo Ámbito Descripción
memberId Entero Obligatorio Un identificador de miembro. Cualquier AdUnits contenido dentro de ANMultiAdRequest debe tener idéntico memberIds o ANMultiAdRequest se rechazará. memberId También se puede alcanzar pasando un placementIdobjeto .
multiAdRequestListener MultiAdRequestListener Obligatorio Se usa para compartir información sobre la respuesta tanto si es correcta como si no.
loadOnInit booleano Opcional Valor booleano para decidir si se va a cargar ANMultiAdRequest durante su inicialización.
ads Anuncio Opcional Argumento de longitud variable para tomar una lista de anuncios.

Configuración

Todas las ANMultiAdRequest propiedades y métodos de configuración son los mismos en tipo y uso que los usados por AdUnits. Si las propiedades se establecen en ANMultiAdRequest, hereda AdUnits esas propiedades. No son permanentes, una vez ANMultiAdRequest que el ha completado su ciclo de vida AdUnits se revierte a sus valores de propiedad anteriores.

Parámetro Tipo Description
memberId Entero Un identificador de miembro. Cualquier AdUnits contenido dentro de ANMultiAdRequest debe tener idéntico memberIds o será ANMultiAdRequest rechazado por el bus de impresión de Xandr. memberId También se puede alcanzar pasando un placementIdobjeto .
age Cadena Edad del usuario.
gender AdView.GENDER El sexo del usuario.
externalUid Cadena Identificador generado por el usuario que se puede asignar con los identificadores internos de Xandr y esa asignación compartida entre los miembros de los clientes con varios puestos.
customKeyword ArrayList<Pair<String, String>> Palabras clave personalizadas aplicadas a ANMultiAdRequest. Estas palabras clave las heredarán las AdUnits adjuntas. Esta lista se puede complementar dentro de cada AdUnit una con palabras clave personalizadas adicionales.
AdUnit Anuncio Elemento de AdUnit que se va a agregar a ANMultiAdRequest.

ANMultiAdRequest Métodos

load()

Carga todo lo contenido AdUnits mediante el envío de una multi-tag UTv3 solicitud al bus de impresión de Xandr. Para cada ANMultiAdRequest instancia, solo puede haber una carga activa a la vez. Las cargas se completan cuando se desencadena uno de los Listner métodos. Devuelve true si se realiza correctamente y false si se produce un error.

public boolean load()

addAdUnit(Ad adUnit)

Agrega a AdUnitANMultiAdRequestAdUnits se rechazará si su memberId no coincide con el memberId asignado a ANMultiAdRequest o no coincide con el memberId del otro AdUnits contenido dentro de ANMultiAdRequest. Devuelve true si se realiza correctamente y false si se produce un error.

public boolean addAdUnit(Ad adUnit)

Argumentos

Parámetro Tipo Ámbito Descripción
AdUnit Anuncio Obligatorio Elemento AdUnit que se va a agregar a ANMultiAdRequest.

removeAdUnit(Ad adUnit)

Quita un AdUnit elemento de devuelve trueANMultiAdRequest si se realiza correctamente y false si se produce un error.

public void removeAdUnit(Ad adUnit)

Argumentos

Parámetro Tipo Ámbito Descripción
AdUnit Anuncio Obligatorio Elemento AdUnit que se va a quitar de .ANMultiAdRequest

addCustomKeywordWithKey

Agrega una palabra clave personalizada a ANMultiAdRequest. Almacenadas como un par de claves y un valor, las palabras clave personalizadas las hereda el AdUnits contenido dentro de ANMultiAdRequest.

public void addCustomKeywords(String key, String value)

Argumentos

Parámetro Tipo Ámbito Descripción
key Cadena Obligatorio Identificador de clave de la palabra clave personalizada.
value Cadena Obligatorio Valor de la palabra clave custom.

removeCustomKeywordWithKey

Quita una palabra clave personalizada de MultiAdRequest. La palabra clave remove ya no la heredará el AdUnits contenido dentro de ANMultiAdRequest.

public void removeCustomKeyword(String key)

Argumentos

Parámetro Tipo Ámbito Descripción
key Cadena Obligatorio Identificador de clave de la palabra clave personalizada que se va a quitar.

clearCustomKeywords

Quita todas las palabras clave personalizadas de MultiAdRequest. Las palabras clave borradas ya no las heredará el AdUnits contenido dentro de ANMultiAdRequest

public void clearCustomKeywords()

stop()

Detiene , MultiAdRequestantes de que se complete la solicitud.

public void stop()

activityOnDestroy()

Destruye la unidad de anuncios una vez completada la actividad para evitar pérdidas de memoria.

adUnit.activityOnDestroy()

Nota:

Como procedimientos recomendados:

  • Se debe llamar a todos los métodos del SDK en el subproceso principal.
  • activityOnDestroy() se debe llamar a para las AdUnits adjuntas cuando se espera que se destruyan.

Ejemplo

if (anMultiAdRequest != null) {
            for (WeakReference<Ad> adRef: anMultiAdRequest.getAdUnitList()) {
                Ad ad  = adRef.get();
                if (ad instanceof BannerAdView) {
                    ((BannerAdView) ad).activityOnDestroy();
                } else if (ad instanceof InterstitialAdView){
                    ((InterstitialAdView) ad).activityOnDestroy();
                } else if (ad instanceof VideoAd) {
                    ((VideoAd) ad).activityOnDestroy();
                }
            }
        }

MultiAdRequestListener Métodos

onMultiAdRequestCompleted()

Devuelve correctamente ANMultiAdRequest. Correcto indica que todos los contenidos AdUnits se han cargado y tienen un resultado claro.

void onMultiAdRequestCompleted()

onMultiAdRequestFailed(ResultCode code)

Devuelve un mensaje de error si se produce un error en el UT Request generado por una ANMultiAdRequest instancia, por cualquier motivo.

void onMultiAdRequestFailed(ResultCode code)