Integrar el SDK de anuncios de Google para dispositivos móviles en una app es el primer paso para mostrar anuncios y obtener ingresos. Una vez que hayas integrado 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
Asegúrate de que el archivo de compilación de tu app use los siguientes valores:
minSdkVersion
de19
o máscompileSdkVersion
de33
o más
Configura 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. Con 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
de nivel de proyecto, incluye el repositorio de 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 anuncios de Google para dispositivos móviles al archivo Gradle de nivel de app de tu módulo, que suele ser
app/build.gradle
:dependencies { implementation 'com.google.android.gms:play-services-ads:22.5.0' }
Agrega el AdMob ID de la app, como se identifica en la interfaz webAdMob, al archivo
AndroidManifest.xml
de la app. Para hacerlo, agrega una etiqueta<meta-data>
conandroid:name="com.google.android.gms.ads.APPLICATION_ID"
. Puedes encontrar el ID de la app en la AdMob interfaz web. Enandroid: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 el ID AdMob real de la app, no el que se indicó anteriormente. Si solo deseas experimentar con el SDK en una app de Hello World, puedes usar el ID de app de muestra que aparece arriba.
Además, ten en cuenta que, si no agregas la etiqueta
<meta-data>
como se muestra más arriba, se producirá 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 tu 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 usan la versión 20.3.0 o una 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
para que el SDK de anuncios de Google para dispositivos móviles 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
com.google.android.gms.permission.AD_ID
, incluido 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 debe hacerse 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 después de llamar a MobileAds.initialize()
. Si necesitas obtener el consentimiento de los usuarios del Espacio Económico Europeo (EEE), configura las marcas específicas de la solicitud, como tagForChildDirectedTreatment
o tag_for_under_age_of_consent
, o realiza acciones antes de cargar anuncios. Asegúrate de hacerlo antes de inicializar el SDK de anuncios de Google para dispositivos móviles.
A continuación, se muestra un ejemplo de cómo llamar al método initialize()
en una actividad:
MainActivity de ejemplo (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 mediación, espera hasta que se llame al controlador de finalización antes de cargar anuncios, ya que esto asegurará que todos los adaptadores de mediación se inicialicen.
Selecciona un formato del anuncio
El SDK de anuncios de Google para dispositivos móviles ya se importó y ya puedes implementar un anuncio. AdMob ofrece una variedad de formatos de anuncio a fin de 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 en forma de banner permanecen en la pantalla mientras los usuarios interactúan con la app y se pueden actualizar de forma automática después de un período determinado. Si es la primera vez que utilizas la publicidad para dispositivos móviles, son un excelente lugar para comenzar.
Implementa anuncios en forma de banner
Intersticial
Anuncios de pantalla completa que cubren la interfaz de una app hasta que el usuario los cierra. Es mejor usarlos 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.
Implementa anuncios intersticiales
Nativo
Anuncios personalizables que se adaptan al diseño de tu app. Tú decides cómo y dónde se muestran 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 de juegos gratuitos.
Implementa anuncios recompensados
Recursos adicionales
El repositorio de anuncios de Google para dispositivos móviles en GitHub demuestra cómo usar los diferentes formatos de anuncios que ofrece esta API.