Solicitud de varios anuncios para Android

Información general

Esta página contiene instrucciones y ejemplos de código para iniciar y configurar un ANMultiAdRequestarchivo . ANMultiAdRequest Permite al usuario utilizar 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 comportamiento de diferentes AdUnits (banner, nativo, vídeo, etc.) utilizando las mismas especificaciones de cada AdUnit tipo. Las palabras clave personalizadas se pueden asignar a un ANMultiAdRequest y serán heredadas por el archivo AdUnits. An ANMultiAdRequest tiene un oyente de cara al público que observa durante onMultiAdRequestCompleted() o onMultiAdRequestFailed().

Inicialización

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

Nota:

La MultiAdRequest instancia rechazará AdUnits con memberId valores diferentes a los suyos.

Métodos de inicialización

Los métodos siguientes son compatibles con esta característica:

Inicialice con una lista de AdUnits y llame 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 AdUnitsarchivos . Si se produce un error durante el ciclo de load vida, la clase no se inicializa y se devuelve un objeto nulo. Cuando se produce un proceso exitoso load , se devuelve una instancia de clase.

Sin Id. de editor

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

Con id. de editor

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 utilizando propiedades y métodos de clase. El delegado inicializado se establece a AdUnits medida que se agregan.

Sin Id. de editor

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

Con id. de editor

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

Argumentos

Variable Tipo Ámbito Descripción
memberId Entero Obligatorio Un id. de miembro. Cualquier contenido AdUnits dentro del ANMultiAdRequest debe tener idéntico memberIds o el ANMultiAdRequest será rechazado. El memberId también se puede lograr pasando en un placementId.
multiAdRequestListener MultiAdRequestListener Obligatorio Se usa para compartir información sobre la respuesta, ya sea correcta o errónea.
loadOnInit booleano Opcional Valor booleano para decidir si se carga durante ANMultiAdRequest su inicialización.
ads Anuncio Opcional Argumento de longitud variable para incluir 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 utilizados por AdUnits. Si las propiedades se establecen en el ANMultiAdRequest, heredan AdUnits esas propiedades. No son permanentes, una vez que han ANMultiAdRequest completado su ciclo AdUnits de vida, vuelven a sus valores de propiedad anteriores.

Parámetro Tipo Descripción
memberId Entero Un id. de miembro. Cualquier contenido AdUnits dentro del ANMultiAdRequest debe tener idéntico memberIds o será ANMultiAdRequest rechazado por Impression Bus. El memberId también se puede lograr pasando en un placementId.
age Cadena La edad del usuario.
gender AdView.GENDER El sexo del usuario.
externalUid Cadena Identificador generado por el usuario que se puede asignar con Monetize UUID2 y que se puede compartir entre los miembros de los clientes con varios puestos.
customKeyword ArrayList<Pair<String, String>> Palabras clave personalizadas aplicadas al ANMultiAdRequestarchivo . Estas palabras clave las heredarán los AdUnits adjuntos. Esta lista se puede complementar dentro de cada una AdUnit con palabras clave personalizadas adicionales.
AdUnit Anuncio Un elemento de AdUnit para agregar al ANMultiAdRequestarchivo .

ANMultiAdRequest de pago

load()

Carga todo contenido AdUnits mediante el envío de una multi-tag UTv3 solicitud a Impression Bus. Para cada ANMultiAdRequest instancia, solo puede haber una carga activa a la vez. Las cargas se completan cuando se dispara uno de los Listner métodos. Regresa true al éxito y false al fracaso.

public boolean load()

addAdUnit(Ad adUnit)

Agrega un AdUnit objeto al ANMultiAdRequest. AdUnits serán rechazados si su memberId no coincide con el memberId asignado al ANMultiAdRequest o no coincide con el memberId del otro AdUnits contenido dentro del ANMultiAdRequest. Si se establece a publisherId en el ANMultiAdRequest, cualquiera AdUnit con una diferente publisherId también será rechazada. Regresa true al éxito y false al fracaso.

public boolean addAdUnit(Ad adUnit)

Argumentos

Parámetro Tipo Ámbito Descripción
AdUnit Anuncio Obligatorio Un AdUnit elemento para agregar al ANMultiAdRequestarchivo .

removeAdUnit(Ad adUnit)

Quita an AdUnit de la ANMultiAdRequest Returns true on success and false on failure.

public void removeAdUnit(Ad adUnit)

Argumentos

Parámetro Tipo Ámbito Descripción
AdUnit Anuncio Obligatorio Un AdUnit elemento para quitar del ANMultiAdRequestarchivo .

addCustomKeywordWithKey

Agrega una palabra clave personalizada al ANMultiAdRequestarchivo . Almacenadas como un par de claves y valor, las palabras clave personalizadas se heredan por las AdUnits contenidas en el ANMultiAdRequestarchivo .

public void addCustomKeywords(String key, String value)

Argumentos

Parámetro Tipo Ámbito Descripción
key Cadena Obligatorio El identificador de clave de la palabra clave personalizada.
value Cadena Obligatorio El valor de la palabra clave personalizada.

removeCustomKeywordWithKey

Quita una palabra clave personalizada del MultiAdRequestarchivo . La palabra clave remove ya no se heredará por la AdUnits contenida en el ANMultiAdRequestarchivo .

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 del MultiAdRequestarchivo . Las palabras clave borradas ya no se heredarán por las AdUnits palabras clave contenidas en el ANMultiAdRequestarchivo . 

public void clearCustomKeywords()

stop()

Detiene el MultiAdRequest, antes de que se complete la solicitud.

public void stop()

activityOnDestroy()

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

adUnit.activityOnDestroy()

Nota:

As best practices:

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

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 de pago

onMultiAdRequestCompleted()

Devuelve el éxito de ANMultiAdRequest. El éxito 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 lo UT Request generado por una ANMultiAdRequest instancia falla, por cualquier motivo.

void onMultiAdRequestFailed(ResultCode code)