Ajouter des bandeaux publicitaires et des rectangles de taille moyenne à une application Android

L’Audience Network vous permet de monétiser vos applications Android avec des publicités Facebook. Ce guide vous explique comment ajouter des bandeaux publicitaires et des rectangles de taille moyenne à votre application.

You can change placements in Monetization Manager to the Medium Rectangle format if these were previously configured as Banner for bidding. Similarly, for any new medium rectangle placements, navigate to the placement settings page in Monetization Manager and select Medium Rectangle (not Banner).

Placements will deliver as normal even if they are not changed to the medium rectangle format. However, to avoid confusion, we recommend that you change these placements to medium rectangle.

Si vous êtes intéressé·e par d’autres types d’unité publicitaire, consultez la liste des types disponibles.

Assurez-vous d’avoir suivi les guides de configuration Android avant de poursuivre.

Procédure d’ajout de bandeaux publicitaires et de rectangles de taille moyenne

Étape 1 : ajout d’un conteneur de composition pour le bandeau publicitaire

Étape 2 : implémentation du bandeau dans votre activité

Étape 3 : ajout d’un détecteur de publicité

Étape 1 : ajout d’un conteneur de composition pour le bandeau publicitaire

Dans votre fichier de composition (par exemple : /res/layout/activity_main.xml), ajoutez une composition qui servira de conteneur pour votre publicité.
Notez l’ID que vous définissez ici car vous l’intégrerez dans le code plus tard.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
...
>
...
<LinearLayout
android:id="@+id/banner_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
/>
...
</RelativeLayout>

Étape 2 : implémentation du bandeau dans votre activité

Pour importer le SDK Facebook Ads, ajoutez le code suivant en haut de votre activité :

import com.facebook.ads.*;

Ensuite, instanciez un objet AdView et exécutez une requête pour charger une publicité. Dans la mesure où AdView est une sous-classe de View, vous pouvez l’ajouter à votre hiérarchie des vues comme avec n’importe quelle autre vue :

private AdView adView;

@Override
public void onCreate(Bundle savedInstanceState) {
...
// Instantiate an AdView object. 
// NOTE: The placement ID from the Facebook Monetization Manager identifies your App.
// To get test ads, add IMG_16_9_APP_INSTALL# to your placement id. Remove this when your app is ready to serve real ads.

adView = new AdView(this, "IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID", AdSize.BANNER_HEIGHT_50);

// Find the Ad Container
LinearLayout adContainer = (LinearLayout) findViewById(R.id.banner_container);

// Add the ad view to your activity layout
adContainer.addView(adView);

// Request an ad
adView.loadAd();
}

Si vous créez votre application pour tablette, envisagez d’utiliser la taille AdSize.BANNER_HEIGHT_90 à la place. Dans tous les cas, la largeur du bandeau est flexible et doit comporter au minimum 320 pixels.

Enfin, ajoutez le code suivant à la fonction onDestroy() de votre activité pour publier les ressources utilisées par AdView :

@Override
protected void onDestroy() {
if (adView != null) {
adView.destroy();
}
super.onDestroy();
}

Après avoir exécuté le code ci-dessus, vous devriez voir une fenêtre comme celle-ci :



Si vous utilisez l’émulateur Google Android par défaut, ajoutez la ligne de code suivante avant de charger une publicité test :
AdSettings.addTestDevice("HASHED ID");.

Utilisez l’ID haché imprimé sur le logcat la première fois que vous effectuez une demande de chargement d’une publicité sur un appareil.

Cette étape n’est pas nécessaire pour Genymotion ni pour les appareils physiques. Si vous souhaitez effectuer un test avec de vraies publicités, consultez notre guide de test.

Étape 3 : ajout d’un détecteur de publicité

Maintenant que le code de base s’exécute, vous pouvez définir un objet AdListener pour votre AdView pour écouter des événements spécifiques :

import android.widget.Toast;
...

protected void onCreate(Bundle savedInstanceState) {
...
AdListener adListener = new AdListener() {
@Override
public void onError(Ad ad, AdError adError) {
// Ad error callback
Toast.makeText(
MainActivity.this,
"Error: " + adError.getErrorMessage(),
Toast.LENGTH_LONG)
.show();
}

@Override
public void onAdLoaded(Ad ad) {
// Ad loaded callback
}

@Override
public void onAdClicked(Ad ad) {
// Ad clicked callback
}

@Override
public void onLoggingImpression(Ad ad) {
// Ad impression logged callback
// Please refer to Monetization Manager or Reporting API for final impression numbers
}
};

// Request an ad
adView.loadAd(adView.buildLoadAdConfig().withAdListener(adListener).build());
}

Dimensions des bandeaux

L’Audience Network prend en charge trois tailles de publicité à utiliser dans votre AdView. La largeur du bandeau est flexible et doit comporter au minimum 320 pixels. Seule la hauteur est définie.

Format publicitaire Référence AdSize Dimensions Recommandation

Bandeau standard

BANNER_50

320 x 50

Cette bannière s’adapte parfaitement aux téléphones.

Grand bandeau

BANNER_90

320 x 90

Cette bannière s’adapte parfaitement aux tablettes et aux appareils de plus grandes dimensions.

Rectangle de taille moyenne

RECTANGLE_HEIGHT_250

300 x 250

Ce format s’adapte parfaitement aux fils à faire défiler ou aux écrans de fin de niveau.

Étapes suivantes