Le Google Mobile Ads SDK (Legacy) prend en charge les tailles d'annonces fixes lorsque les bannières adaptatives ne répondent pas à vos besoins.
Le tableau suivant présente les tailles de bannières standards.
| Taille en dp (L x H) | Description | Disponibilité | Constante AdSize |
|---|---|---|---|
| 320x50 | Bannière | Téléphones et tablettes | BANNER |
| 320x100 | Grande bannière | Téléphones et tablettes | LARGE_BANNER |
| 300x250 | Rectangle moyen IAB | Téléphones et tablettes | MEDIUM_RECTANGLE |
| 468x60 | Bannière pleine taille IAB | Tablettes | FULL_BANNER |
| 728x90 | Classement 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 la taille de votre conteneur. Si le conteneur ne peut pas contenir la bannière publicitaire, l'annonce n'est pas diffusée et l'avertissement suivant est enregistré :
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
Resources.getDisplayMetrics
méthode. Les dimensions de l'objet AdSize utilisent des pixels indépendants de la densité (dp). Lors de 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 non remplies dans Ad Manager.
Ajouter AdManagerAdView à la mise en page
Au lieu de créer AdManagerAdView de manière programmatique, ajoutez AdManagerAdView à la mise en page XML de l'Activity ou du Fragment dans lequel vous souhaitez l'afficher. 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 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 le bloc d'annonces dans votre application où les annonces doivent être diffusées. Si vous diffusez des bannières publicitaires dans différentes activités, chacune d'elles nécessite un bloc d'annonces.
Taille d'annonce personnalisée
Si vous disposez d'é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'annonce dans la même demande d'annonce, AdManagerAdView vous permet de définir plusieurs tailles d'annonce à 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))
AdManagerAdView utilise par défaut la première taille d'annonce. Une fois l'annonce chargée, la taille AdManagerAdView est modifiée pour correspondre à la taille 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'annonce à 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" />