requisitos previos
Instale o actualice Android Studio a su última versión.
Asegúrate de que tu proyecto cumpla con estos requisitos:
- Objetivos API nivel 19 (KitKat) o superior
- Utiliza Android 4.4 o superior
- Utiliza Jetpack (AndroidX) , que incluye el cumplimiento de estos requisitos de versión:
-
com.android.tools.build:gradle
v3.2.1 o posterior -
compileSdkVersion
28 o posterior
-
Configure un dispositivo físico o use un emulador para ejecutar su aplicación.
Tenga en cuenta que los SDK de Firebase que dependen de los servicios de Google Play requieren que el dispositivo o el emulador tengan instalados los servicios de Google Play.Inicie sesión en Firebase con su cuenta de Google.
Si aún no tiene un proyecto de Android y solo desea probar un producto de Firebase, puede descargar uno de nuestros ejemplos de inicio rápido .
Puede conectar su aplicación de Android a Firebase usando una de las siguientes opciones:
- Opción 1 : (recomendado) Use el flujo de trabajo de configuración de la consola Firebase.
- Opción 2 : use Android Studio Firebase Assistant (puede requerir una configuración adicional).
Opción 1 : agregar Firebase mediante Firebase console
Agregar Firebase a su aplicación implica tareas tanto en la consola de Firebase como en su proyecto de Android abierto (por ejemplo, descarga archivos de configuración de Firebase desde la consola y luego los mueve a su proyecto de Android).
Paso 1 : crea un proyecto de Firebase
Antes de poder agregar Firebase a su aplicación de Android, debe crear un proyecto de Firebase para conectarse a su aplicación de Android. Visite Comprender los proyectos de Firebase para obtener más información sobre los proyectos de Firebase.
Paso 2 : Registre su aplicación con Firebase
Para usar Firebase en su aplicación de Android, debe registrar su aplicación con su proyecto de Firebase. Registrar su aplicación a menudo se denomina "agregar" su aplicación a su proyecto.
Ve a la consola de Firebase .
En el centro de la página de descripción general del proyecto, haga clic en el ícono de Android (
) o Agregar aplicación para iniciar el flujo de trabajo de configuración.Ingrese el nombre del paquete de su aplicación en el campo de nombre del paquete de Android .
Un nombre de paquete identifica de manera única su aplicación en el dispositivo y en Google Play Store.
El nombre de un paquete suele denominarse ID de aplicación .
Encuentre el nombre del paquete de su aplicación en el archivo Gradle de su módulo (nivel de aplicación), generalmente
app/build.gradle
(nombre de paquete de ejemplo:com.yourcompany.yourproject
).Tenga en cuenta que el valor del nombre del paquete distingue entre mayúsculas y minúsculas y no se puede cambiar para esta aplicación de Android de Firebase después de que se haya registrado con su proyecto de Firebase.
(Opcional) Ingrese otra información de la aplicación: apodo de la aplicación y certificado de firma de depuración SHA-1 .
Apodo de la aplicación : un identificador de conveniencia interno que solo es visible para usted en la consola de Firebase
Certificado de firma de depuración SHA-1 : Firebase Authentication requiere un hash SHA-1 (cuando se utiliza el inicio de sesión de Google o el número de teléfono ) y Firebase Dynamic Links .
Haga clic en Registrar aplicación .
Paso 3 : Agregar un archivo de configuración de Firebase
Descargue y luego agregue el archivo de configuración de Firebase Android (
) a su aplicación:google-services.json Haga clic en Descargar google-services.json para obtener su archivo de configuración de Firebase Android.
Mueva su archivo de configuración al directorio raíz del módulo (nivel de aplicación) de su aplicación.
El archivo de configuración de Firebase contiene identificadores únicos, pero no secretos, para su proyecto. Para obtener más información sobre este archivo de configuración, visite Comprender los proyectos de Firebase .
Puede volver a descargar su archivo de configuración de Firebase en cualquier momento.
Asegúrese de que el nombre del archivo de configuración no tenga caracteres adicionales, como
(2)
.
Para que los valores en su archivo de configuración
sean accesibles para los SDK de Firebase, necesita el complemento Gradle de servicios de Google (google-services.json google-services
).En su archivo Gradle de nivel raíz (nivel de proyecto) (
<project>/build.gradle
), agregue el complemento de servicios de Google como una dependencia de buildscript:buildscript { repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } dependencies { ... // Add the dependency for the Google services Gradle plugin classpath 'com.google.gms:google-services:4.3.15' } } allprojects { ... repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } }
En el archivo Gradle de tu módulo (nivel de aplicación) (generalmente
<project>/<app-module>/build.gradle
), agrega el complemento de servicios de Google:plugins { id 'com.android.application' // Add the Google services Gradle plugin id 'com.google.gms.google-services' ... }
Paso 4 : agregue los SDK de Firebase a su aplicación
En el archivo Gradle de tu módulo (nivel de aplicación) (generalmente
<project>/<app-module>/build.gradle
), agrega las dependencias para los productos de Firebase que deseas usar en tu aplicación. Recomendamos usar Firebase Android BoM para controlar el control de versiones de la biblioteca.Análisis habilitado
Kotlin+KTX
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:31.2.0') // When using the BoM, you don't specify versions in Firebase library dependencies // Add the dependency for the Firebase SDK for Google Analytics implementation 'com.google.firebase:firebase-analytics-ktx' // TODO: Add the dependencies for any other Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth-ktx' implementation 'com.google.firebase:firebase-firestore-ktx' }
Java
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:31.2.0') // When using the BoM, you don't specify versions in Firebase library dependencies // Add the dependency for the Firebase SDK for Google Analytics implementation 'com.google.firebase:firebase-analytics' // TODO: Add the dependencies for any other Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
Al usar Firebase Android BoM , su aplicación siempre usará versiones compatibles de las bibliotecas de Firebase Android.
Análisis no habilitado
Kotlin+KTX
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:31.2.0') // When using the BoM, you don't specify versions in Firebase library dependencies // TODO: Add the dependencies for Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth-ktx' implementation 'com.google.firebase:firebase-firestore-ktx' }
Java
dependencies { // ... // Import the Firebase BoM implementation platform('com.google.firebase:firebase-bom:31.2.0') // When using the BoM, you don't specify versions in Firebase library dependencies // TODO: Add the dependencies for Firebase products you want to use // See https://firebase.google.com/docs/android/setup#available-libraries // For example, add the dependencies for Firebase Authentication and Cloud Firestore implementation 'com.google.firebase:firebase-auth' implementation 'com.google.firebase:firebase-firestore' }
Al usar Firebase Android BoM , su aplicación siempre usará versiones compatibles de las bibliotecas de Firebase Android.
Después de agregar las dependencias de los productos que desea usar, sincronice su proyecto de Android con los archivos de Gradle.
Las compilaciones de Gradle que usan el complemento de Gradle de Android (AGP) v4.2 o anterior deben habilitar la compatibilidad con Java 8. De lo contrario, estos proyectos de Android tendrán un error de compilación al agregar un SDK de Firebase.
Para solucionar este error de compilación, puede seguir una de dos opciones:
- Agregue las opciones de
compileOptions
enumeradas del mensaje de error a su archivobuild.gradle
de nivel de aplicación. - Aumente el
minSdkVersion
para su proyecto de Android a 26 o más.
Obtenga más información sobre este error de compilación en estas preguntas frecuentes .
- Agregue las opciones de
¡Eso es! Puede avanzar para ver los siguientes pasos recomendados.
Sin embargo, si tiene problemas para configurarlo, visite Solución de problemas y preguntas frecuentes de Android .
Opción 2 : Agregar Firebase usando el Asistente de Firebase
El Asistente de Firebase registra su aplicación con un proyecto de Firebase y agrega los archivos, complementos y dependencias necesarios de Firebase a su proyecto de Android, ¡todo desde Android Studio!
Abra su proyecto de Android en Android Studio, luego asegúrese de estar usando las últimas versiones de Android Studio y Firebase Assistant:
- Windows/Linux: Ayuda > Buscar actualizaciones
- macOS: Android Studio > Buscar actualizaciones
Abra el Asistente de Firebase: Herramientas > Firebase .
En el panel Asistente , elija un producto de Firebase para agregarlo a su aplicación. Expanda su sección, luego haga clic en el enlace del tutorial (por ejemplo,
Analytics > Registrar un evento de Analytics ).Haga clic en Conectar a Firebase para conectar su proyecto de Android con Firebase.
Este flujo de trabajo crea automáticamente una nueva aplicación de Firebase para Android con el nombre del paquete de su aplicación. Puede crear esta nueva aplicación de Android de Firebase en un proyecto de Firebase existente o en un proyecto nuevo.
Estos son algunos consejos sobre cómo configurar su proyecto de Firebase:
Consulte nuestras mejores prácticas para agregar aplicaciones a un proyecto de Firebase, incluido cómo manejar múltiples variantes.
Si crea un nuevo proyecto, le recomendamos encarecidamente que configure Google Analytics para su proyecto, lo que le permite tener una experiencia óptima con muchos productos de Firebase.
Este flujo de trabajo también agrega el archivo de configuración de Android de su proyecto de Firebase (
) al directorio del módulo (nivel de aplicación) de su aplicación.google-services.json
Haga clic en el botón para agregar un producto de Firebase deseado (por ejemplo,
Agregar Analytics a su aplicación ).
Sincronice su aplicación para asegurarse de que todas las dependencias tengan las versiones necesarias.
En el panel Asistente , siga las instrucciones de configuración restantes para su producto de Firebase seleccionado.
¡Agregue tantos otros productos de Firebase como desee a través del Asistente de Firebase!
¡Eso es! Asegúrese de consultar los siguientes pasos recomendados.
Sin embargo, si tiene problemas para configurarlo, visite Solución de problemas y preguntas frecuentes de Android .
Bibliotecas disponibles
En esta sección, se enumeran los productos de Firebase compatibles con Android y sus dependencias de Gradle. Obtén más información sobre estas bibliotecas de Android de Firebase:
Documentación de referencia ( Kotlin+KTX | Java )
Repositorio de GitHub del SDK de Android de Firebase
Tenga en cuenta que cuando usa Firebase Android BoM , no especifica versiones de bibliotecas individuales cuando declara dependencias de bibliotecas de Firebase en build.gradle
.
Kotlin+KTX
Servicio o Producto | dependencia gradle | Último versión | ¿Añadir análisis? |
---|---|---|---|
Lista de materiales de Android de Firebase (Lista de materiales) | com.google.firebase:firebase-bom La última versión de Firebase BoM contiene las últimas versiones de cada biblioteca de Android de Firebase. Para saber qué versiones de la biblioteca están asignadas a una versión de BoM específica, revise las notas de la versión para esa versión de BoM. | 31.2.0 | |
AdMob | com.google.android.gms:play-services-ads | 21.5.0 | |
Analítica | com.google.firebase:firebase-analytics-ktx | 21.2.0 | |
App Check proveedor personalizado | com.google.firebase:firebase-appcheck-ktx | 16.1.1 | |
Proveedor de depuración de App Check | com.google.firebase:firebase-appcheck-debug | 16.1.1 | |
App Check Play Integridad proveedor | com.google.firebase:firebase-appcheck-playintegrity | 16.1.1 | |
Distribución de aplicaciones | com.google.firebase:firebase-appdistribution | 16.0.0-beta05 | |
API de distribución de aplicaciones | com.google.firebase:firebase-appdistribution-api-ktx | 16.0.0-beta05 | |
Complemento de distribución de aplicaciones | com.google.firebase:firebase-appdistribution-gradle | 3.2.0 | |
Autenticación | com.google.firebase:firebase-auth-ktx | 21.1.0 | |
Tienda de fuego en la nube | com.google.firebase:firebase-firestore-ktx | 24.4.2 | |
Cloud Functions para el SDK de cliente de Firebase | com.google.firebase:firebase-funciones-ktx | 20.2.2 | |
Mensajería en la nube | com.google.firebase:firebase-messaging-ktx | 23.1.1 | |
Almacenamiento en la nube | com.google.firebase:firebase-almacenamiento-ktx | 20.1.0 | |
Crashlytics | com.google.firebase:firebase-crashlytics-ktx | 18.3.3 | |
NDK de Crashlytics | com.google.firebase:firebase-crashlytics-ndk | 18.3.3 | |
Complemento Crashlytics | com.google.firebase:firebase-crashlytics-gradle | 2.9.2 | |
Compatibilidad con módulos de funciones dinámicas | com.google.firebase:firebase-dynamic-module-support | 16.0.0-beta03 | |
Enlaces dinámicos | com.google.firebase:firebase-dynamic-links-ktx | 21.1.0 | |
Mensajería en la aplicación | com.google.firebase:firebase-inappmessaging-ktx | 20.3.0 | (requerido) |
Pantalla de mensajería en la aplicación | com.google.firebase:firebase-inappmessaging-display-ktx | 20.3.0 | (requerido) |
Instalaciones de base de fuego | com.google.firebase:instalaciones-de-firebase-ktx | 17.1.0 | |
API de descarga de modelos de Firebase ML | com.google.firebase:firebase-ml-modeldownloader-ktx | 24.1.2 | |
Supervisión del rendimiento | com.google.firebase:firebase-perf-ktx | 20.3.1 | |
Complemento de monitoreo de rendimiento | com.google.firebase:perf-plugin | 1.4.2 | |
Base de datos en tiempo real | com.google.firebase:firebase-database-ktx | 20.1.0 | |
Configuración remota | com.google.firebase:firebase-config-ktx | 21.2.1 | |
Complemento de servicios de Google Play | com.google.gms:servicios de google | 4.3.15 | |
Bibliotecas en desuso | |||
Aplicación Comprobar proveedor de SafetyNet | com.google.firebase:firebase-appcheck-safetynet | 16.1.1 | |
Indexación de aplicaciones | com.google.firebase:firebase-appindexing | 20.0.0 | |
API de modelos personalizados de Firebase ML | com.google.firebase:firebase-ml-modelo-intérprete | 22.0.4 | |
API de Firebase ML Vision | com.google.firebase:firebase-ml-visión | 24.1.0 | |
Firebase ML: modelo de etiquetado de imágenes | com.google.firebase:firebase-ml-vision-image-label-model | 20.0.2 | |
Firebase ML: modelo de seguimiento y detección de objetos | com.google.firebase:firebase-ml-vision-object-detection-model | 19.0.6 | |
Firebase ML: modelo de detección de rostros | com.google.firebase:firebase-ml-vision-cara-modelo | 20.0.2 | |
Firebase ML: modelo de escaneo de código de barras | com.google.firebase:firebase-ml-vision-barcode-modelo | 16.1.2 | |
Firebase ML: AutoML Vision Edge API | com.google.firebase:firebase-ml-vision-automl | 18.0.6 | |
Firebase ML: API de lenguaje natural | com.google.firebase:firebase-ml-natural-language | 22.0.1 | |
Firebase ML: modelo de identificación de idiomas | com.google.firebase:firebase-ml-natural-language-language-id-model | 20.0.8 | |
Firebase ML: Traducir modelo | com.google.firebase:firebase-ml-natural-language-translate-model | 20.0.9 | |
Firebase ML: modelo de respuesta inteligente | com.google.firebase:firebase-ml-natural-language-smart-reply-model | 20.0.8 |
Java
Servicio o Producto | dependencia gradle | Último versión | ¿Añadir análisis? |
---|---|---|---|
Lista de materiales de Android de Firebase (Lista de materiales) | com.google.firebase:firebase-bom La última versión de Firebase BoM contiene las últimas versiones de cada biblioteca de Android de Firebase. Para saber qué versiones de la biblioteca están asignadas a una versión de BoM específica, revise las notas de la versión para esa versión de BoM. | 31.2.0 | |
AdMob | com.google.android.gms:play-services-ads | 21.5.0 | |
Analítica | com.google.firebase:firebase-analytics | 21.2.0 | |
App Check proveedor personalizado | com.google.firebase:firebase-appcheck | 16.1.1 | |
Proveedor de depuración de App Check | com.google.firebase:firebase-appcheck-debug | 16.1.1 | |
App Check Play Integridad proveedor | com.google.firebase:firebase-appcheck-playintegrity | 16.1.1 | |
Distribución de aplicaciones | com.google.firebase:firebase-appdistribution | 16.0.0-beta05 | |
API de distribución de aplicaciones | com.google.firebase:firebase-appdistribution-api | 16.0.0-beta05 | |
Complemento de distribución de aplicaciones | com.google.firebase:firebase-appdistribution-gradle | 3.2.0 | |
Autenticación | com.google.firebase:firebase-auth | 21.1.0 | |
Tienda de fuego en la nube | com.google.firebase:firebase-firestore | 24.4.2 | |
Cloud Functions para el SDK de cliente de Firebase | com.google.firebase:firebase-funciones | 20.2.2 | |
Mensajería en la nube | com.google.firebase:firebase-messaging | 23.1.1 | |
Almacenamiento en la nube | com.google.firebase:firebase-almacenamiento | 20.1.0 | |
Crashlytics | com.google.firebase:firebase-crashlytics | 18.3.3 | |
NDK de Crashlytics | com.google.firebase:firebase-crashlytics-ndk | 18.3.3 | |
Complemento Crashlytics | com.google.firebase:firebase-crashlytics-gradle | 2.9.2 | |
Compatibilidad con módulos de funciones dinámicas | com.google.firebase:firebase-dynamic-module-support | 16.0.0-beta03 | |
Enlaces dinámicos | com.google.firebase:firebase-dynamic-links | 21.1.0 | |
Mensajería en la aplicación | com.google.firebase:firebase-inappmessaging | 20.3.0 | (requerido) |
Pantalla de mensajería en la aplicación | com.google.firebase:firebase-inappmessaging-display | 20.3.0 | (requerido) |
Instalaciones de base de fuego | com.google.firebase:instalaciones de firebase | 17.1.0 | |
API de descarga de modelos de Firebase ML | com.google.firebase:firebase-ml-modeldownloader | 24.1.2 | |
Supervisión del rendimiento | com.google.firebase:firebase-perf | 20.3.1 | |
Complemento de monitoreo de rendimiento | com.google.firebase:perf-plugin | 1.4.2 | |
Base de datos en tiempo real | com.google.firebase:firebase-base de datos | 20.1.0 | |
Configuración remota | com.google.firebase:firebase-config | 21.2.1 | |
Complemento de servicios de Google Play | com.google.gms:servicios de google | 4.3.15 | |
Bibliotecas en desuso | |||
Aplicación Comprobar proveedor de SafetyNet | com.google.firebase:firebase-appcheck-safetynet | 16.1.1 | |
Indexación de aplicaciones | com.google.firebase:firebase-appindexing | 20.0.0 | |
API de modelos personalizados de Firebase ML | com.google.firebase:firebase-ml-modelo-intérprete | 22.0.4 | |
API de Firebase ML Vision | com.google.firebase:firebase-ml-visión | 24.1.0 | |
Firebase ML: modelo de etiquetado de imágenes | com.google.firebase:firebase-ml-vision-image-label-model | 20.0.2 | |
Firebase ML: modelo de seguimiento y detección de objetos | com.google.firebase:firebase-ml-vision-object-detection-model | 19.0.6 | |
Firebase ML: modelo de detección de rostros | com.google.firebase:firebase-ml-vision-cara-modelo | 20.0.2 | |
Firebase ML: modelo de escaneo de código de barras | com.google.firebase:firebase-ml-vision-barcode-modelo | 16.1.2 | |
Firebase ML: AutoML Vision Edge API | com.google.firebase:firebase-ml-vision-automl | 18.0.6 | |
Firebase ML: API de lenguaje natural | com.google.firebase:firebase-ml-natural-language | 22.0.1 | |
Firebase ML: modelo de identificación de idiomas | com.google.firebase:firebase-ml-natural-language-language-id-model | 20.0.8 | |
Firebase ML: Traducir modelo | com.google.firebase:firebase-ml-natural-language-translate-model | 20.0.9 | |
Firebase ML: modelo de respuesta inteligente | com.google.firebase:firebase-ml-natural-language-smart-reply-model | 20.0.8 |
Próximos pasos
Agregue los servicios de Firebase a su aplicación:
Obtenga información sobre el comportamiento de los usuarios con Analytics .
Configure un flujo de autenticación de usuario con Autenticación .
Almacene datos, como información del usuario, con Cloud Firestore o Realtime Database .
Almacene archivos, como fotos y videos, con Cloud Storage .
Active el código de back-end que se ejecuta en un entorno seguro con Cloud Functions .
Envía notificaciones con Cloud Messaging .
Averigüe cuándo y por qué su aplicación falla con Crashlytics .
Más información sobre Firebase:
Visite Comprender los proyectos de Firebase para obtener más información sobre los proyectos de Firebase y las prácticas recomendadas para los proyectos.
Visite Más información sobre Android y Firebase si tiene preguntas sobre conceptos que no conoce o son específicos del desarrollo de Firebase y Android.
Explora las aplicaciones de muestra de Firebase .
Obtén experiencia práctica con Firebase Android Codelab .
Obtenga más información con el curso Firebase en un fin de semana .
Prepárese para lanzar su aplicación:
- Configura alertas de presupuesto para tu proyecto en Google Cloud Console.
- Supervise el panel de uso y facturación en la consola de Firebase para obtener una imagen general del uso de su proyecto en varios servicios de Firebase.
- Revise la lista de verificación de lanzamiento de Firebase .
¿Tiene problemas con Firebase y su proyecto de Android? Visite la solución de problemas y preguntas frecuentes de Android .