Solução de problemas e perguntas frequentes sobre o Android e o Firebase

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.

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.

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.

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ção plugins do arquivo settings.gradle.kts ou settings.gradle.
  • Se o projeto estiver usando a sintaxe buildscript, inclua-a nas seções buildscript e allprojects no build.gradle.kts ou build.gradle para envolvidos no projeto.

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 arquivo build.gradle.kts no ou build.gradle nível do app.
  • Aumente a minSdkVersion do seu projeto Android para 26 ou mais.

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.

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:

  1. 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
      }
    }
    
  2. 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'
        ...
    }