En esta página, se ofrecen sugerencias y solución de problemas específicos de Android que puedes encontrar cuando usas Firebase.
¿Tienes otras dificultades o tu problema no se describe en esta página? Asegúrate de consultar las Preguntas frecuentes principales de Firebase para obtener más información general o específica sobre Firebase.
También puedes consultar el repositorio de GitHub del SDK de Firebase Android para obtener una lista actualizada de los problemas informados y la solución de problemas. Te recomendamos que también presentes tus propios problemas relacionados con el SDK de Firebase Android.
¿Debo proporcionar una clave SHA‑1 cuando agrego una app para Android a un proyecto de Firebase?
Firebase Authentication (cuando se usa el Acceso con Google o el acceso con número de teléfono) y Firebase Dynamic Links requieren información de SHA-1. Si no usas estas funciones, no necesitas proporcionar una clave SHA-1.
¿Cómo resuelvo el error “Ya existe un cliente de OAuth2 para este nombre de paquete y clave SHA-1 en otro proyecto”?
Este error aparece si detectamos que otro proyecto de Firebase o Google Cloud contiene un ID de cliente de OAuth 2.0 con el nombre de paquete y la clave SHA-1 que especificaste. Obtén más información para resolver este error.
Cuando agrego Firebase a mi proyecto de Android, aparece un error del tipo “No se pudo encontrar”.
Por lo general, este error significa que a tu app le faltan una o más referencias al
repositorio Maven de Google. Asegúrate de incluir el repositorio de Maven de Google
(google()
) en el archivo de configuración de Gradle.
- Si tu proyecto usa la sintaxis
plugins
, inclúyela en la secciónplugins
del archivosettings.gradle.kts
osettings.gradle
. - Si tu proyecto usa la sintaxis
buildscript
, inclúyela en las seccionesbuildscript
yallprojects
en el archivobuild.gradle.kts
obuild.gradle
a nivel de proyecto.
Cuando agrego un SDK de Firebase a mi proyecto de Android, aparece un error sobre la compatibilidad entre invocación y personalización y la habilitación de la expansión de sintaxis.
En mayo de 2021 (Firebase BoM v28.0.0), Firebase inhabilitó la expansión de sintaxis para todas sus bibliotecas de Android (consulta las notas de la versión).
Este cambio significa que en las compilaciones de Gradle que usan la versión 4.2 o versiones anteriores del complemento de Android para Gradle (AGP) se debe habilitar la compatibilidad con Java 8. De lo contrario, cuando agregues un SDK de Firebase, estos proyectos de Android tendrán la siguiente falla de compilación:
D8: Invoke-customs are only supported starting with Android O (--min-api 26) Caused by: com.android.builder.dexing.DexArchiveBuilderException: Error while dexing. The dependency contains Java 8 bytecode. Please enable desugaring by adding the following to build.gradle android { compileOptions { sourceCompatibility 1.8 targetCompatibility 1.8 } } See https://developer.android.com/studio/write/java8-support.html for details. Alternatively, increase the minSdkVersion to 26 or above.
Para solucionar esta falla de compilación, puedes seguir una de estas dos opciones:
- Agrega las
compileOptions
que se indican en el mensaje de error al archivobuild.gradle.kts
obuild.gradle
a nivel de la app. - Aumenta la
minSdkVersion
de tu proyecto de Android a 26 o una versión posterior.
El Acceso con Google muestra el error “12500:” después de lanzar mi app. ¿Cómo puedo solucionarlo?
Esto podría ocurrir por dos motivos: no proporcionaste un correo electrónico de asistencia o te falta una clave SHA. Para resolver este error, asegúrate de que todas estas condiciones sean verdaderas:
- Agregaste un correo electrónico de asistencia a la configuración general de tu proyecto en Firebase console.
- Agregaste la
huella digital del certificado SHA-1 de tu almacén de claves de lanzamiento o producción
a tu app de Firebase para Android en Firebase console (ve a
Configuración del proyecto , desplázate hacia abajo hasta Tus apps y selecciona tu app para Android). - Agregaste la
huella digital del certificado SHA-1 de Google Play Console
a la app de Firebase para Android en Firebase console (ve a
Configuración del proyecto , desplázate hacia abajo hasta Tus apps y selecciona tu app para Android).
¿Cómo agregar complementos de Firebase a un proyecto de Android
con la sintaxis buildscript
?
Firebase tiene los siguientes complementos de Gradle:
Nombre del complemento | Coordenadas de Maven | Última versión | ID del complemento |
---|---|---|---|
Complemento de Servicios de Google Play | com.google.gms:google-services |
4.4.2 | com.google.gms.google-services |
Complemento de App Distribution | com.google.firebase:firebase-appdistribution-gradle |
5.1.1 | com.google.firebase.appdistribution |
Complemento de Crashlytics | com.google.firebase:firebase-crashlytics-gradle |
3.0.3 | com.google.firebase.crashlytics |
Complemento de Performance Monitoring | com.google.firebase:perf-plugin |
1.4.2 | com.google.firebase.firebase-perf |
A continuación, se muestra cómo agregar un complemento de Firebase a un proyecto de Android que aún usa la sintaxis
buildscript
:
En el archivo de Gradle (
<project>/build.gradle.kts
o<project>/build.gradle
) de nivel de raíz (nivel de proyecto), agrega el complemento como una dependencia mediante las coordenadas de Maven:buildscript { repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } dependencies { ... // Add the Maven coordinates and latest version of the plugin classpath ("
PLUGIN_MAVEN_COORDINATES :PLUGIN_VERSION ") } } allprojects { ... repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } }buildscript { repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } dependencies { ... // Add the Maven coordinates and latest version of the plugin classpath '
PLUGIN_MAVEN_COORDINATES :PLUGIN_VERSION ' } } allprojects { ... repositories { // Make sure that you have the following two repositories google() // Google's Maven repository mavenCentral() // Maven Central repository } }En el archivo de Gradle (generalmente
<project>/<app-module>/build.gradle.kts
o<project>/<app-module>/build.gradle
) de tu módulo (a nivel de app), agrega el complemento con su ID de complemento:plugins { id("com.android.application") // Add the ID of the plugin id("
FIREBASE_PLUGIN_ID ") ... }plugins { id 'com.android.application' // Add the ID of the plugin id '
FIREBASE_PLUGIN_ID ' ... }