Fehlerbehebung & FAQ für Android und Firebase

Diese Seite bietet Tipps und Fehlerbehebung für Android-spezifische Probleme, die bei der Verwendung von Firebase auftreten können.

Haben Sie andere Herausforderungen oder ist Ihr Problem unten nicht aufgeführt? Schauen Sie sich unbedingt die Haupt-FAQ zu Firebase an, um weitere Firebase-übergreifende oder produktspezifische FAQ zu erhalten.

Sie können sich auch das GitHub-Repo des Firebase Android SDK ansehen, um eine aktuelle Liste der gemeldeten Probleme und Fehlerbehebungen zu erhalten. Wir empfehlen Ihnen, dort auch Ihre eigenen Probleme im Zusammenhang mit dem Firebase Android SDK einzureichen!

SHA-1-Informationen sind für die Firebase-Authentifizierung (bei Verwendung der Google-Anmeldung oder der Telefonnummer-Anmeldung ) und Firebase Dynamic Links erforderlich. Wenn Sie diese Funktionen nicht nutzen, müssen Sie keinen SHA-1 angeben.

Dieser Fehler tritt auf, wenn wir feststellen, dass ein anderes Firebase- oder Google Cloud-Projekt eine OAuth 2.0-Client-ID mit dem von Ihnen angegebenen Paketnamen und SHA-1 enthält. Erfahren Sie, wie Sie diesen Fehler beheben können.

Dieser Fehler bedeutet normalerweise, dass Ihrer App ein oder mehrere Verweise auf das Maven-Repository von Google fehlen. Stellen Sie sicher, dass Sie das Maven-Repository von Google ( google() ) in Ihre Gradle-Konfigurationsdatei aufnehmen.

  • Wenn Ihr Projekt die plugins Syntax verwendet, fügen Sie sie in den plugins Abschnitt Ihrer Datei settings.gradle.kts “ oder settings.gradle ein.
  • Wenn Ihr Projekt die buildscript Syntax verwendet, fügen Sie sie sowohl in die Abschnitte buildscript als auch „ allprojects in Ihrer build.gradle.kts oder build.gradle Datei auf Projektebene ein.

Im Mai 2021 (Firebase BoM v28.0.0) hat Firebase die Entzuckerung für alle seine Android-Bibliotheken deaktiviert (siehe Versionshinweis ).

Diese Änderung bedeutet, dass Gradle-Builds, die das Android Gradle-Plugin (AGP) v4.2 oder früher verwenden, die Java 8-Unterstützung aktivieren müssen. Andernfalls erhalten diese Android-Projekte beim Hinzufügen eines Firebase SDK den folgenden Build-Fehler:

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.

Um diesen Build-Fehler zu beheben, können Sie eine von zwei Optionen wählen:

  • Fügen Sie die aufgelisteten compileOptions aus der Fehlermeldung zu Ihrer build.gradle.kts oder build.gradle -Datei auf App-Ebene hinzu.
  • Erhöhen Sie die minSdkVersion für Ihr Android-Projekt auf 26 oder höher.

Dafür gibt es zwei mögliche Gründe: Sie haben keine Support-E-Mail angegeben oder Ihnen fehlt ein SHA-Schlüssel. Um diesen Fehler zu beheben, stellen Sie sicher, dass alle folgenden Bedingungen erfüllt sind:

Firebase verfügt über die folgenden Gradle-Plugins:

Plugin-Name Maven-Koordinaten Letzte Version Plugin-ID
Plugin für Google Play-Dienste com.google.gms:google-services 4.4.1 com.google.gms.google-services
App-Verteilungs-Plugin com.google.firebase:firebase-appdistribution-gradle 4.2.0 com.google.firebase.appdistribution
Crashlytics-Plugin com.google.firebase:firebase-crashlytics-gradle 2.9.9 com.google.firebase.crashlytics
Plugin zur Leistungsüberwachung com.google.firebase:perf-plugin 1.4.2 com.google.firebase.firebase-perf

So fügen Sie ein Firebase-Plugin zu einem Android-Projekt hinzu, das weiterhin die buildscript Syntax verwendet:

  1. Fügen Sie in Ihrer Gradle-Datei auf Stammebene (Projektebene) ( <project>/build.gradle.kts oder <project>/build.gradle ) das Plugin als Abhängigkeit unter Verwendung seiner Maven-Koordinaten hinzu:

    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. Fügen Sie in Ihrer Modul-Gradle-Datei (auf App-Ebene) (normalerweise <project>/<app-module>/build.gradle.kts oder <project>/<app-module>/build.gradle ) das Plugin unter Verwendung seiner Plugin-ID hinzu :

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