Integrar el SDK de Google Mobile Ads en una app es el primer paso para mostrar anuncios y obtener ingresos. Una vez que integres el SDK, puedes elegir un formato de anuncio (como video nativo o recompensado) y seguir los pasos para implementarlo.
Antes de comenzar
Para preparar tu app, completa los pasos que se indican en las siguientes secciones.
Requisitos previos de la app
- Usa Android Studio 3.2 o una versión posterior
Asegúrate de que el archivo de compilación de tu app use los siguientes valores:
- Una
minSdkVersion
de19
o más - Una
compileSdkVersion
de28
o más
- Una
Cómo configurar la app en tu cuenta de AdMob
Registra tu app como una app de AdMob. Para ello, sigue estos pasos:
Accede o regístrate para obtener una cuenta de AdMob.
Registra tu app en AdMob. En este paso, se crea una app de AdMob con un ID de app de AdMob único que se necesita más adelante en esta guía.
Cómo configurar tu app
En el archivo
build.gradle
a nivel de proyecto, incluye el repositorio Maven de Google y el repositorio central de Maven en las seccionesbuildscript
yallprojects
:buildscript { repositories { google() mavenCentral() } } allprojects { repositories { google() mavenCentral() } }
Agrega las dependencias para el SDK de Google Mobile Ads al archivo Gradle de tu módulo en el nivel de la app, que generalmente es
app/build.gradle
:dependencies { implementation 'com.google.android.gms:play-services-ads:21.5.0' }
Agrega el AdMob ID de tu app (identificado en la IU deAdMob) al archivo
AndroidManifest.xml
de la app. Para ello, agrega una etiqueta<meta-data>
conandroid:name="com.google.android.gms.ads.APPLICATION_ID"
. Puedes encontrar el ID de tu app en la AdMob IU. Paraandroid:value
, inserta tu propio AdMob ID de app, rodeado de comillas.<manifest> <application> <!-- Sample AdMob app ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/> </application> </manifest>
En una app real, usa tu ID de app AdMob real, no el que se mencionó antes. Si solo quieres experimentar con el SDK en una app de Hello World, puedes usar el ID de app de muestra que aparece arriba.
Ten en cuenta también que, si no se agrega la etiqueta
<meta-data>
como se muestra arriba, se generará una falla con el siguiente mensaje:The Google Mobile Ads SDK was initialized incorrectly.
(Opcional) Declara el permiso
AD_ID
para que las versiones anteriores funcionen con Android 13.Si la app usa la versión 20.4.0 o posterior del SDK de anuncios de Google para dispositivos móviles, puedes omitir este paso, ya que el SDK declara automáticamente el permiso
com.google.android.gms.permission.AD_ID
y puede acceder al ID de publicidad cuando esté disponible.En el caso de las apps que utilizan la versión 20.3.0 o anterior del SDK de anuncios de Google para dispositivos móviles y se orientan a Android 13, debes agregar el permiso
com.google.android.gms.permission.AD_ID
en el archivoAndroidManifest.xml
a fin de que el SDK de Google Mobile Ads acceda al ID de publicidad:<manifest> <application> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/> <-- For apps targeting Android 13 or higher & GMA SDK version 20.3.0 or lower --> <uses-permission android:name="com.google.android.gms.permission.AD_ID"/> </application> </manifest>
Para obtener más información sobre la declaración de permisos de
com.google.android.gms.permission.AD_ID
y sobre cómo inhabilitarla, consulta este artículo de Play Console.
Cómo inicializar el SDK de anuncios de Google para dispositivos móviles
Antes de cargar anuncios, haz que tu app inicialice el SDK de anuncios de Google para dispositivos móviles llamando a MobileAds.initialize()
, que inicializa el SDK y llama a un objeto de escucha de finalización una vez que se completa la inicialización (o después de un tiempo de espera de 30 segundos). Esto se debe hacer solo una vez, idealmente cuando se inicia la app.
Los anuncios se pueden cargar previamente con el SDK de anuncios de Google para dispositivos móviles o con los SDK de socios de mediación tras una llamada a MobileAds.initialize()
. Si necesitas obtener el consentimiento de los usuarios en el Espacio Económico Europeo (EEE), configura las marcas específicas de la solicitud (como tagForChildDirectedTreatment
o tag_for_under_age_of_consent
) o realiza la acción pertinente antes de cargar anuncios. Asegúrate de hacer esto antes de inicializar el SDK de anuncios de Google para dispositivos móviles.
Este es un ejemplo de cómo llamar al método initialize()
en una actividad:
Ejemplo de MainActivity (extracto)
Java
import com.google.android.gms.ads.MobileAds; import com.google.android.gms.ads.initialization.InitializationStatus; import com.google.android.gms.ads.initialization.OnInitializationCompleteListener; public class MainActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MobileAds.initialize(this, new OnInitializationCompleteListener() { @Override public void onInitializationComplete(InitializationStatus initializationStatus) { } }); } }
Kotlin
import com.google.android.gms.ads.MobileAds class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) MobileAds.initialize(this) {} } }
Si usas la mediación, espera hasta que se llame al controlador de finalización antes de cargar los anuncios, ya que esto garantizará que se inicialicen todos los adaptadores de mediación.
Seleccione un formato de anuncio
El SDK de Google Mobile Ads se importó y estás listo para implementar un anuncio.AdMob ofrece una variedad de formatos de anuncio diferentes para que puedas elegir el que mejor se adapte a la experiencia del usuario de tu app.
Banner
Anuncios rectangulares que aparecen en la parte superior o inferior de la pantalla del dispositivo Los anuncios de banner permanecen en pantalla mientras los usuarios interactúan con la app y se pueden actualizar automáticamente después de cierto período. Si la publicidad para celulares es nueva para usted, es un excelente punto de partida.
Cómo implementar anuncios de banner
Intersticial
Anuncios de pantalla completa que cubren la interfaz de una aplicación hasta que el usuario los cierra. Se usan mejor en pausas naturales en el flujo de ejecución de una app, como entre los niveles de un juego o justo después de completar una tarea.
Implemente anuncios intersticiales
Código nativo
Anuncios personalizables que se adaptan al diseño de tu app. Tú decides cómo y dónde se colocan para que el diseño sea más coherente con el de tu app.
Recompensado
Anuncios que recompensan a los usuarios por mirar videos cortos y por interactuar con encuestas y anuncios con juegos Se usa para monetizar apps gratuitas.
Cómo implementar anuncios recompensados
Recursos adicionales
El repositorio de anuncios móviles de Google en GitHub demuestra cómo usar los diferentes formatos de anuncios que ofrece esta API.