Nesta página, você verá dicas e soluções de problemas específicos para o Android que podem ser encontrados ao usar o Firebase.
Você está enfrentando algum outro desafio ou seu problema não está descrito abaixo? Confira as Perguntas frequentes sobre o Firebase para ver mais dúvidas relacionadas ao Firebase ou a um produto específico.
Confira também o repositório do SDK do Firebase para Android no GitHub para consultar uma lista atualizada dos problemas informados e da solução de erros. Também recomendamos que você registre seus próprios problemas relacionados ao SDK Firebase para Android.
Preciso fornecer um SHA-1 ao adicionar um app Android a um projeto do Firebase?
As informações de SHA-1 são exigidas pelo Firebase Authentication (ao usar o Login do Google ou o login com número de telefone) e pelo Firebase Dynamic Links. Se você não usa esses recursos, não precisa fornecer um SHA-1.
Como resolver este erro: "Já existe um cliente OAuth2 com esse nome de pacote e SHA-1 em outro projeto"?
Isso ocorre quando detectamos outro projeto do Firebase ou do Google Cloud que contém um ID do cliente OAuth 2.0 com o nome de pacote e SHA-1 especificados. Saiba como resolver esse erro.
Quando adiciono o Firebase ao meu projeto Android, recebo a mensagem de erro "Não foi possível encontrar".
Esse erro geralmente significa que o app não tem uma ou mais referências
ao repositório Maven do Google. Inclua o repositório Maven do Google (google()
) no arquivo de configuração do Gradle.
- Se o projeto estiver usando a sintaxe
plugins
, inclua-a na seçãoplugins
do arquivosettings.gradle.kts
ousettings.gradle
. - Se o projeto estiver usando a sintaxe
buildscript
, inclua-a nas seçõesbuildscript
eallprojects
nobuild.gradle.kts
oubuild.gradle
para envolvidos no projeto.
Quando adiciono um SDK do Firebase ao meu projeto Android, recebo uma mensagem de erro sobre o suporte personalizado de invocação e a ativação da simplificação.
Em maio de 2021 (Firebase BoM v28.0.0), o Firebase desativou a simplificação de todas as Bibliotecas do Android (consulte a nota da versão).
Essa mudança significa que os builds do Gradle que usam o Plug-in do Android para Gradle (AGP, na sigla em inglês) v4.2 ou anteriores precisam ativar a compatibilidade com Java 8. Caso contrário, ao adicionar um SDK do Firebase, esses projetos do Android recebem a seguinte falha de build:
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 corrigir essa falha de compilação, use uma destas duas opções:
- Adicione o
compileOptions
listado da mensagem de erro ao seu arquivobuild.gradle.kts
no oubuild.gradle
nível do app. - Aumente a
minSdkVersion
do seu projeto Android para 26 ou mais.
O Login do Google mostra o erro "12500:" depois de lançar meu app. Como faço para corrigir isso?
Há dois possíveis motivos para isso acontecer: você não forneceu um e-mail de suporte ou está faltando uma chave SHA. Para corrigir esse erro, verfique se todas estas condições foram atendidas.
- Você adicionou um e-mail de suporte às Configurações gerais do projeto no console do Firebase.
- Você adicionou a
impressão digital do certificado SHA-1 do seu keystore de produção/versão
ao seu app Android do Firebase no Console do Firebase (acesse
Configurações do projeto , role para baixo até Seus apps e selecione seu app Android). - Você adicionou a
impressão digital do certificado SHA-1 do console doGoogle Play
ao seu app Android do Firebase no console do Firebase (acesse
Configurações do projeto , role a tela para baixo até Seus apps e selecione seu app Android).
Como adicionar plug-ins do Firebase a um projeto Android usando a sintaxe buildscript
?
O Firebase tem os seguintes plug-ins do Gradle:
Nome do plug-in | Coordenadas do Maven | Versão mais recente | ID do plug-in |
---|---|---|---|
Plug-in do Google Play Services | com.google.gms:google-services |
4.4.2 | com.google.gms.google-services |
Plug-in do App Distribution | com.google.firebase:firebase-appdistribution-gradle |
5.1.1 | com.google.firebase.appdistribution |
Plug-in do Crashlytics | com.google.firebase:firebase-crashlytics-gradle |
3.0.3 | com.google.firebase.crashlytics |
Plug-in do Performance Monitoring | com.google.firebase:perf-plugin |
1.4.2 | com.google.firebase.firebase-perf |
Confira como adicionar um plug-in do Firebase a um projeto Android que ainda usa a sintaxe buildscript
:
No arquivo Gradle no nível raiz (para envolvidos no projeto) (
<project>/build.gradle.kts
ou<project>/build.gradle
), adicione o plug-in como uma dependência usando as coordenadas do 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 } }No arquivo Gradle do módulo (nível do app) (geralmente
<project>/<app-module>/build.gradle.kts
ou<project>/<app-module>/build.gradle
), adicione o plug-in usando o ID dele: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 ' ... }