Partager via


Demande d’annonces multiples pour Android

Vue d’ensemble

Cette page contient des instructions et des exemples de code pour lancer et configurer un ANMultiAdRequest. ANMultiAdRequest permet à l’utilisateur d’utiliser une seule demande de balise universelle (UTv3) pour lancer plusieurs enchères, dont les résultats sont retournés dans une seule réponse de serveur.

ANMultiAdRequest est une classe concrète et n’implémente aucune interface. La classe adopte le type et le comportement de différents AdUnits (bannière, natif, vidéo, etc.) en utilisant les mêmes spécifications de chaque AdUnit type. Les mots clés personnalisés peuvent être affectés à un ANMultiAdRequest et seront hérités par le contenu .AdUnits Un ANMultiAdRequest a un écouteur public qui observe pour onMultiAdRequestCompleted() ou onMultiAdRequestFailed().

Initialisation

Les utilisateurs peuvent choisir parmi l’une des deux méthodes d’initialisation. Les deux nécessitent un memberId et un multiAdRequestListener objet en tant qu’arguments pour ANMultiAdRequest pouvoir être initialisé. Le memberId et multiAdRequestListener ne peut être défini qu’une seule fois par instance. Un paramètre d’ID de serveur de publication facultatif peut être défini à ce stade. Tous AdUnits doivent contenir le même memberId que celui passé dans le processus AdUnits d’initialisation contenant placementIds l’élément associé memberId à ce placement. Une fois l’initialisation réussie, une ANMultiAdRequest classe instance est retournée.

Remarque

Le MultiAdRequest instance rejette AdUnitsmemberId avec des valeurs différentes de la leur.

Méthodes d’initialisation

Initialiser avec une liste de AdUnits et appeler la load méthode

Active l’initialisation et appelle la load méthode avec une seule ligne de code. Le instance est initialisé avec une liste d’un ou plusieurs AdUnits. Si un échec se produit pendant le load cycle de vie, la classe n’est pas initialisée et un objet nil est retourné. Lorsqu’un processus réussitload, une classe instance est retournée.

Sans ID d’éditeur

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

Avec l’ID d’éditeur

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

Initialisation simple

Cette initialisation de base retourne une instance de la classe, mais n’effectue aucune action. La configuration peut être effectuée à l’aide de propriétés et de méthodes de classe. Le délégué initialisé est défini sur le à mesure qu’il AdUnits est ajouté.

Sans ID d’éditeur

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

Avec l’ID d’éditeur

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

Arguments

Variable Type Portée Description
memberId int Obligatoire ID de membre. Tout AdUnits contenu dans le ANMultiAdRequest doit avoir identique memberIds ou le ANMultiAdRequest sera rejeté. Le memberId peut également être atteint en passant un placementId.
multiAdRequestListener MultiAdRequestListener Obligatoire Utilisé pour partager des informations sur la réponse, qu’il s’agisse d’un succès ou d’un échec.
loadOnInit valeur booléenne Facultatif Valeur booléenne pour décider s’il faut charger le ANMultiAdRequest pendant son initialisation.
ads Ad Facultatif Argument de longueur variable pour prendre dans une liste d’annonces.

Configuration

Toutes les ANMultiAdRequest propriétés et méthodes de configuration sont les mêmes en type et en utilisation que celles utilisées par AdUnits. Si les propriétés sont définies dans , ANMultiAdRequesthéritent de AdUnits ces propriétés. Ils ne sont pas permanents, une fois que le ANMultiAdRequest a terminé son cycle de vie AdUnits , revenez à leurs valeurs de propriété précédentes.

Paramètre Type Description
memberId int ID de membre. Tout AdUnits contenu dans le ANMultiAdRequest doit avoir identique memberIds ou sera ANMultiAdRequest rejeté par le bus d’impression de Xandr. Le memberId peut également être atteint en passant un placementId.
age Chaîne Âge de l’utilisateur.
gender AdView.GENDER Le sexe de l’utilisateur.
externalUid Chaîne ID généré par l’utilisateur qui peut être mappé avec les ID internes de Xandr et qui est partagé entre les membres des clients avec plusieurs sièges.
customKeyword ArrayList<Pair<String, String>> Mots clés personnalisés appliqués à .ANMultiAdRequest Ces mots clés seront hérités par les AdUnits attachés. Cette liste peut être complétée dans chacune AdUnit d’elles par des mots clés personnalisés supplémentaires.
AdUnit Ad Élément AdUnit à ajouter au ANMultiAdRequest.

ANMultiAdRequest Méthodes

load()

Charge tout ce qui est contenu AdUnits en envoyant une multi-tag UTv3 requête au bus Impression de Xandr. Pour chaque ANMultiAdRequest instance, une seule charge peut être active à la fois. Les chargements sont terminés quand l’une Listner des méthodes est déclenchée. Retourne true en cas de réussite et false d’échec.

public boolean load()

addAdUnit(Ad adUnit)

Ajoute un AdUnit à .ANMultiAdRequest  AdUnitssera rejeté si leur memberId ne correspond pas au memberId affecté au ou ne correspond pas au ANMultiAdRequestmemberId de l’autre AdUnits contenu dans .ANMultiAdRequest Retourne true en cas de réussite et false d’échec.

public boolean addAdUnit(Ad adUnit)

Arguments

Paramètre Type Portée Description
AdUnit Ad Obligatoire Élément AdUnit à ajouter à .ANMultiAdRequest

removeAdUnit(Ad adUnit)

Supprime un AdUnit de l’objet ANMultiAdRequest Retourne true en cas de réussite et false en cas d’échec.

public void removeAdUnit(Ad adUnit)

Arguments

Paramètre Type Portée Description
AdUnit Ad Obligatoire Élément AdUnit à supprimer du ANMultiAdRequest.

addCustomKeywordWithKey

Ajoute un mot clé personnalisé au ANMultiAdRequest. Stockés en tant que paire de clés et de valeur, les mots clés personnalisés sont hérités par le AdUnits contenu dans .ANMultiAdRequest

public void addCustomKeywords(String key, String value)

Arguments

Paramètre Type Portée Description
key Chaîne Obligatoire Identificateur de clé pour le mot clé personnalisé.
value Chaîne Obligatoire Valeur du mot clé personnalisé.

removeCustomKeywordWithKey

Supprime un mot clé personnalisé du MultiAdRequest. La suppression mot clé ne sera plus héritée par le AdUnits contenu dans .ANMultiAdRequest

public void removeCustomKeyword(String key)

Arguments

Paramètre Type Portée Description
key Chaîne Obligatoire Identificateur de clé de la mot clé personnalisée à supprimer.

clearCustomKeywords

Supprime tous les mots clés personnalisés du MultiAdRequest. Les mots clés effacés ne seront plus hérités par le AdUnits contenu dans .ANMultiAdRequest 

public void clearCustomKeywords()

stop()

Arrête le MultiAdRequest, avant que la requête ne soit terminée.

public void stop()

activityOnDestroy()

Détruit l’unité publicitaire une fois l’activité terminée pour éviter les fuites de mémoire.

adUnit.activityOnDestroy()

Remarque

En tant que bonnes pratiques :

  • Toutes les méthodes du KIT de développement logiciel (SDK) doivent être appelées sur le thread main.
  • activityOnDestroy() doit être appelé pour les AdUnits attachés lorsqu’ils sont censés être détruits.

Exemple

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éthodes

onMultiAdRequestCompleted()

Retourne la réussite de ANMultiAdRequest. La réussite indique que tous les contenus AdUnits ont été chargés et ont un résultat clair.

void onMultiAdRequestCompleted()

onMultiAdRequestFailed(ResultCode code)

Retourne un message d’erreur si le UT Request généré par un ANMultiAdRequest instance échoue, pour une raison quelconque.

void onMultiAdRequestFailed(ResultCode code)