Solução de problemas e Perguntas frequentes para Android e Firebase

Esta página oferece dicas e solução de problemas para problemas específicos do Android que você pode encontrar ao usar o Firebase.

Tem outros desafios ou não vê seu problema descrito abaixo? Certifique-se de verificar as perguntas frequentes principais do Firebase para obter mais perguntas frequentes sobre o Firebase ou específicas do produto.

Você também pode verificar o repositório GitHub do Firebase Android SDK para obter uma lista atualizada de problemas relatados e soluções de problemas. Recomendamos que você registre seus próprios problemas relacionados ao SDK do Firebase para Android lá também!

As informações SHA-1 são exigidas pelo Firebase Authentication (ao usar o login do Google ou o login por número de telefone ) e pelo Firebase Dynamic Links . Se não estiver usando esses recursos, não será necessário fornecer um SHA-1.

Este erro ocorre se detectarmos que outro projeto do Firebase ou Google Cloud contém um ID de cliente OAuth 2.0 com o nome do pacote e SHA-1 que você especificou. Saiba como resolver esse erro .

Esse erro geralmente significa que falta uma ou mais referências ao repositório Maven do Google em seu aplicativo. Certifique-se de incluir o repositório Maven do Google ( google() ) em seu arquivo de configuração do Gradle.

  • Se o seu projeto estiver usando a sintaxe plugins , inclua-a na seção plugins em seu arquivo settings.gradle.kts ou settings.gradle .
  • Se o seu projeto estiver usando a sintaxe buildscript , inclua-a nas seções buildscript e allprojects no arquivo build.gradle.kts ou build.gradle no nível do projeto.

Em maio de 2021 (Firebase BoM v28.0.0), o Firebase desativou a desugaring para todas as suas bibliotecas Android (consulte a nota de lançamento ).

Essa alteração significa que as compilações do Gradle que usam o plug-in Android Gradle (AGP) v4.2 ou anterior precisam ativar o suporte ao Java 8. Caso contrário, ao adicionar um SDK do Firebase, esses projetos Android receberão a seguinte falha de compilação:

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, você pode seguir uma das duas opções:

  • Adicione as compileOptions listadas da mensagem de erro ao arquivo build.gradle.kts ou build.gradle no nível do aplicativo .
  • Aumente o minSdkVersion do seu projeto Android para 26 ou superior.

Há dois motivos possíveis para isso acontecer: você não forneceu um e-mail de suporte ou está faltando uma chave SHA. Para corrigir esse erro, certifique-se de que todas estas condições sejam verdadeiras:

O Firebase possui os seguintes plug-ins Gradle:

Nome do plug-in Coordenadas de Maven Última versão ID do plug-in
Plug-in de serviços do Google Play com.google.gms:google-services 4.4.1 com.google.gms.google-services
Plug-in de distribuição de aplicativos com.google.firebase:firebase-appdistribution-gradle 4.2.0 com.google.firebase.appdistribution
Plug-in Crashlytics com.google.firebase:firebase-crashlytics-gradle 2.9.9 com.google.firebase.crashlytics
Plug-in de monitoramento de desempenho com.google.firebase:perf-plugin 1.4.2 com.google.firebase.firebase-perf

Veja como adicionar um plug-in do Firebase a um projeto Android que ainda usa a sintaxe buildscript :

  1. Em seu arquivo Gradle de nível raiz (nível de projeto) ( <project>/build.gradle.kts ou <project>/build.gradle ), adicione o plug-in como uma dependência usando suas coordenadas 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 seu módulo (nível do aplicativo) (geralmente <project>/<app-module>/build.gradle.kts ou <project>/<app-module>/build.gradle ), adicione o plug-in usando seu ID de plug-in :

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