Google Mobile Ads SDK (Legacy) accepte les tailles d'annonces fixes lorsque les bannières adaptatives ne répondent pas à vos besoins.
Le tableau suivant liste les tailles de bannières standards.
| Taille en dp (LxH) | Description | Disponibilité | Constante AdSize |
|---|---|---|---|
| 320 x 50 | Bannière | Téléphones et tablettes | BANNER |
| 320 x 100 | Grande bannière | Téléphones et tablettes | LARGE_BANNER |
| 300 x 250 | Rectangle moyen IAB | Téléphones et tablettes | MEDIUM_RECTANGLE |
| 468 x 60 | Bannière IAB en taille réelle | Tablettes | FULL_BANNER |
| 728 x 90 | Leaderboard IAB | Tablettes | LEADERBOARD |
La taille du conteneur dans lequel vous placez votre annonce doit être au moins égale à celle de la bannière. Tout remplissage réduit efficacement la taille de votre conteneur. Si le conteneur ne peut pas accueillir la bannière, l'annonce n'est pas diffusée et l'avertissement suivant est consigné :
W/Ads: Not enough space to show ad. Needs 320x50 dp, but only has 288x495 dp.
Définissez une taille d'annonce inférieure ou égale à la taille de l'écran de l'appareil.
Pour déterminer la taille maximale de l'écran, utilisez la méthode Resources.getDisplayMetrics. Les dimensions de l'objet AdSize utilisent des pixels indépendants de la densité (dp). Pour effectuer la comparaison, convertissez la taille de l'écran de pixels en dp.
Pour en savoir plus sur les contraintes de taille, consultez Résoudre les problèmes d'impressions inachevées dans Ad Manager.
Ajouter AdManagerAdView à la mise en page
Au lieu de créer le AdManagerAdView de manière programmatique, ajoutez-le à la mise en page XML de l'élément Activity ou Fragment dans lequel vous souhaitez l'afficher.AdManagerAdView Exemple :
<com.google.android.gms.ads.admanager.AdManagerAdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/banner_ad_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="/21775744923/example/fixed-size-banner" />
Notez les attributs obligatoires suivants :
ads:adSize: définissez cette valeur sur la taille d'annonce que vous souhaitez utiliser. Si vous ne souhaitez pas utiliser la taille standard définie par la constante, vous pouvez définir une taille personnalisée. Exemple :ads:adSize="320x50".ads:adUnitId: définissez cette valeur sur le bloc d'annonces de votre application dans lequel les annonces doivent être diffusées. Si vous diffusez des bannières dans différentes activités, chacune d'elles nécessite un bloc d'annonces.
Taille d'annonce personnalisée
Si vous avez des éléments de campagne de réservation Ad Manager ciblant une taille personnalisée, vous pouvez créer un AdSize avec une largeur et une hauteur personnalisées correspondant à votre élément de campagne.
Java
AdSize customAdSize = new AdSize(250, 250);
AdManagerAdView adView = new AdManagerAdView(this);
adView.setAdSizes(customAdSize);
Kotlin
val customAdSize = AdSize(250, 250)
val adView = AdManagerAdView(this)
adView.setAdSizes(customAdSize)
Plusieurs tailles d'annonce
Si vous souhaitez cibler des éléments de campagne de plusieurs tailles d'annonces dans la même demande d'annonce, AdManagerAdView vous permet de définir plusieurs tailles d'annonces à la fois.
Java
AdManagerAdView adView = new AdManagerAdView(this);
adView.setAdSizes(AdSize.BANNER, new AdSize(120, 20), new AdSize(250, 250));
Kotlin
val adView = AdManagerAdView(this)
adView.setAdSizes(AdSize.BANNER, AdSize(120, 20), AdSize(250, 250))
La valeur par défaut de AdManagerAdView correspond à la première taille d'annonce. Une fois l'annonce chargée, la taille de AdManagerAdView est remplacée par celle de l'annonce chargée. Votre mise en page doit pouvoir s'adapter automatiquement à la nouvelle taille.
Vous pouvez également spécifier plusieurs tailles d'annonces à l'aide de l'attribut ads:adSizes dans votre fichier de mise en page XML :
<com.google.android.gms.ads.admanager.AdManagerAdView
android:id="@+id/multiple_ad_sizes_view"
android:layout_width="wrap_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
ads:adSizes="BANNER,120x20,250x250"
ads:adUnitId="AD_UNIT_ID" />