Les bannières sont diffusées dans une application, en haut ou en bas de l'écran de l'appareil. Elles restent à l'écran lorsque les utilisateurs interagissent avec l'application et peuvent s'actualiser automatiquement au bout d'un certain temps. Si vous débutez dans la publicité mobile, elles sont un excellent point de départ. Étude de cas
Prérequis
- Suivez les étapes de la section Premiers pas.
- (Android uniquement) Connaissance des références JNI
jobject
(voir les conseils JNI Android).
Effectuez toujours des tests avec des annonces tests
Lorsque vous créez et testez vos applications, assurez-vous d'utiliser des annonces tests plutôt que des annonces de production. À défaut, votre compte risque d'être suspendu.
Le moyen le plus simple de charger des annonces de test consiste à utiliser notre ID de bloc d'annonces de test dédié pour les bannières, qui varie selon la plate-forme de l'appareil:
- Android :
ca-app-pub-3940256099942544/6300978111
- iOS :
ca-app-pub-3940256099942544/2934735716
Ces ID de bloc d'annonces ont été spécialement configurés pour renvoyer des annonces de test pour chaque requête. Vous pouvez les utiliser dans vos propres applications lors du codage, des tests et du débogage. Veillez simplement à le remplacer par votre propre ID de bloc d'annonces avant de publier votre application.
Pour en savoir plus sur le fonctionnement des annonces tests du SDK Mobile Ads, consultez Annonces tests.
Implémentation
Configurer un AdView
Les bannières sont affichées dans des objets AdView
. La première étape de l'intégration des bannières consiste donc à créer et à positionner un AdView
.
Ajoutez l'en-tête suivant au code C++ de votre application:
#include "firebase/gma/ad_view.h"
Déclarez et instanciez un objet
AdView
:firebase::gma::AdView* ad_view; ad_view = new firebase::gma::AdView();
Créez un
AdSize
et initialisez la vue d'annonce à l'aide de la vue parenteAdParent
. La vue parente est une référencejobject
JNI à unActivity
Android ou un pointeur vers unUIView
iOS casté en typeAdParent
:// my_ad_parent is a jobject reference // to an Android Activity or a pointer to an iOS UIView. firebase::gma::AdParent ad_parent = static_cast<firebase::gma::AdParent>(my_ad_parent); firebase::Future
result = ad_view->Initialize(ad_parent, kBannerAdUnit, firebase::gma::AdSize::kBanner); Au lieu de conserver l'avenir en tant que variable, vous pouvez vérifier régulièrement l'état de l'opération d'initialisation en appelant
InitializeLastResult()
sur l'objetAdView
. Cela peut être utile pour suivre le processus d'initialisation dans votre boucle de jeu globale.// Monitor the status of the future in your game loop: firebase::Future<void> result = ad_view->InitializeLastResult(); if (result.status() == firebase::kFutureStatusComplete) { // Initialization completed. if(future.error() == firebase::gma::kAdErrorCodeNone) { // Initialization successful. } else { // An error has occurred. } } else { // Initialization on-going. }
Pour en savoir plus sur l'utilisation de
firebase::Future
, consultez la section Utiliser des futures pour surveiller l'état d'achèvement des appels de méthode.
Définir la position de l'annonce
Vous pouvez définir la position de AdView
à tout moment après son initialisation:
firebase::Future<void> result = ad_view->SetPosition(firebase::gma::AdView::kPositionTop);
Charger une annonce
Vous pouvez charger une annonce une fois que AdView
a été initialisé:
firebase::gma::AdRequest ad_request;
firebase::Future<firebase::gma::AdResult> load_ad_result = ad_view->LoadAd(my_ad_request);
Les objets AdRequest
représentent une seule demande d'annonce et contiennent des propriétés pour des informations telles que le ciblage.
Afficher l'annonce
Enfin, affichez l'annonce à l'écran en appelant Show()
. Cette méthode peut être appelée à tout moment après l'initialisation de l'annonce:
firebase::Future<void> result = ad_view->Show();
Événements d'annonce
Le SDK Google Mobile Ads C++ fournit une classe AdListener
que vous pouvez étendre et transmettre à AdView::SetListener()
afin d'être informé des modifications apportées à l'état de la vue d'annonce.
L'extension des méthodes dans AdListener
est facultative. Vous n'avez donc besoin d'implémenter que les méthodes souhaitées. Vous trouverez ci-dessous un exemple d'implémentation d'une classe qui étend toutes les méthodes de la classe AdListener
:
class ExampleAdListener : public firebase::gma::AdListener { public: ExampleAdListener() {} void OnAdClicked() override { // This method is invoked when the user clicks the ad. } void OnAdClosed() override { // This method is invoked when the user closes the ad. } void OnAdImpression() override { // This method is invoked when an impression is recorded for an ad. } void OnAdOpened() override { // This method is invoked when an ad opens an overlay that covers the screen. } }; ExampleAdListener* ad_listener = new ExampleAdListener(); ad_view->SetAdListener(ad_listener);
Tailles des bannières
Le tableau ci-dessous liste les tailles de bannière standards.
Taille en points (LxH) | Description | Disponibilité | Constante firebase::gma::AdSize |
---|---|---|---|
320 x 50 | Bannière | Téléphones et tablettes | kBanner |
320 x 100 | Grande bannière | Téléphones et tablettes | kLargeBanner |
300 x 250 | Rectangle moyen de l'IAB | Téléphones et tablettes | kMediumRectangle |
468 x 60 | Bannière pleine taille IAB | Tablettes | kFullBanner |
728 x 90 | Classement IAB | Tablettes | kLeaderboard |
Largeur fournie x Hauteur adaptative | Bannière adaptative | Téléphones et tablettes | N/A |
Tailles d'annonces personnalisées
Pour définir une taille de bannière personnalisée, définissez les dimensions souhaitées à l'aide du constructeur firebase::gma::AdSize
avec les paramètres de largeur et de hauteur, comme indiqué ci-dessous:
firebase::gma::AdSize ad_size(/*width=*/320, /*height=*/50);
Ressources supplémentaires
Exemple dans GitHub
- Consultez le code source de notre exemple d'application de démarrage rapide sur GitHub.