Los anuncios de banner ocupan un lugar dentro del diseño de la aplicación, ya sea en la parte superior o inferior de la pantalla del dispositivo. Permanecen en la pantalla mientras los usuarios interactúan con la app. y se pueden actualizar automáticamente después de cierto período. Si eres nuevo en publicidad para dispositivos móviles, son un excelente punto de partida. Caso de éxito.
Requisitos previos
- Completa la sección Comenzar.
- (Solo para Android) Conocimientos de referencias
jobject
de JNI (consulta Sugerencias de JNI de Android).
Probar siempre con anuncios de prueba
Cuando compiles y pruebes tus apps, asegúrate de usar anuncios de prueba en lugar de anuncios activos y en producción. De lo contrario, podría suspenderse tu cuenta.
La forma más sencilla de cargar anuncios de prueba es usar nuestro ID exclusivo de unidad de anuncios de prueba para banners, que varía según la plataforma del dispositivo:
- Android:
ca-app-pub-3940256099942544/6300978111
- iOS:
ca-app-pub-3940256099942544/2934735716
Estos ID de unidades de anuncios se configuraron especialmente para mostrar anuncios de prueba para cada solicitud, y puedes usarla en tus propias aplicaciones mientras codificas, pruebas y la depuración. Solo asegúrate de reemplazarlo con tu propio ID de unidad de anuncios antes publicar tu app.
Para obtener más información sobre cómo funcionan los anuncios de prueba del SDK de anuncios para dispositivos móviles, consulta Anuncios de Prueba.
Implementación
Configura un AdView
Los anuncios de banner se muestran en objetos AdView
, así que el primer paso
Integrar anuncios de banner es crear y posicionar un AdView
.
Agrega el siguiente encabezado al código de C++ de tu app:
#include "firebase/gma/ad_view.h"
Declara un objeto
AdView
y crea una instancia de este:firebase::gma::AdView* ad_view; ad_view = new firebase::gma::AdView();
Crea un
AdSize
e inicializa la vista de anuncio con el elemento superiorAdParent
. vista. La vista superior es una referenciajobject
de JNI a unActivity
de Android. o un puntero a una transmisiónUIView
de iOS a un tipoAdParent
:// 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); Como alternativa a retener el futuro como una variable, puedes verificar periódicamente el estado de la operación de inicialización invocando
InitializeLastResult()
en el objetoAdView
. Esto puede ser útil para hacer un seguimiento del proceso de inicialización en tu bucle de juego global.// 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. }
Para obtener más información sobre cómo trabajar con
firebase::Future
, consulta Cómo usar interfaces Future para supervisar el estado de las llamadas al método.
Establece la posición del anuncio
Puedes establecer la posición del AdView
en cualquier momento después de que se inicialice:
firebase::Future<void> result = ad_view->SetPosition(firebase::gma::AdView::kPositionTop);
Carga un anuncio
Puedes cargar un anuncio una vez que se inicialice el AdView
:
firebase::gma::AdRequest ad_request;
firebase::Future<firebase::gma::AdResult> load_ad_result = ad_view->LoadAd(my_ad_request);
Los objetos AdRequest
representan una sola solicitud de anuncio y contienen propiedades de
información como la segmentación.
Mostrar el anuncio
Por último, llama a Show()
para mostrar el anuncio en la pantalla. Se puede invocar este método en cualquier momento después de que se inicializa el anuncio:
firebase::Future<void> result = ad_view->Show();
Eventos de anuncios
El SDK de C++ de anuncios de Google para dispositivos móviles proporciona una clase AdListener
que puedes extender
y pásalo a AdView::SetListener()
para recibir notificaciones sobre los cambios en el anuncio
el estado de la vista.
La extensión de los métodos en AdListener
es opcional, por lo que solo necesitas implementar el
métodos que desees. A continuación, se muestra un ejemplo de implementación de una clase que extiende todos
de la clase de métodos 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);
Tamaños de banner
En la siguiente tabla, se indican los tamaños de banner estándar.
Tamaño en puntos (Ancho x Alto) | Descripción | Disponibilidad | Constante de firebase::gma::AdSize |
---|---|---|---|
320 x 50 | Banner | Teléfonos y tablets | kBanner |
320 x 100 | Banner grande | Teléfonos y tablets | kLargeBanner |
300 x 250 | Rectángulo mediano de IAB | Teléfonos y tablets | kMediumRectangle |
468 x 60 | Banner de tamaño completo del IAB | Tablets | kFullBanner |
728 x 90 | Tabla de clasificación de IAB | Tablets | kLeaderboard |
Ancho proporcionado × Altura adaptable | Banner adaptable | Teléfonos y tablets | N/A |
Tamaños de anuncios personalizados
Para definir un tamaño de banner personalizado, establece las dimensiones deseadas con el
firebase::gma::AdSize
con los parámetros de ancho y altura, como se muestra a continuación:
firebase::gma::AdSize ad_size(/*width=*/320, /*height=*/50);
Recursos adicionales
Ejemplo en GitHub
- Consulta el código fuente de nuestra app de guía de inicio rápido de ejemplo en GitHub.