webentwicklung-frage-antwort-db.com.de

FireBase-Fehler: Auf die zzanb-Klassendatei kann nicht zugegriffen werden, da com.google.Android.gms.internal.zzanb nicht gefunden wurde

UPD. Ich habe diese Frage und Antwort gelesen ( Klassendatei für com.google.Android.gms.internal.zzaja nicht gefunden ). Aber ich verstehe nicht, welche Zeichenfolgen ich in meinem Projekt hinzufügen oder entfernen muss .. Da ich diese und andere Zeichenfolgen in meinem Code nicht verwendet habe: "com.google.Android.gms: play-services-location: 9.2.0" kompilieren

Ich entwickle eine Android-App mit FireBase. Und wenn ich mein Projekt bauen möchte, habe ich einen Fehler:

Fehler: (39, 25) Fehler: Es kann nicht auf die zzanb -Klassendatei zugegriffen werden, da com.google.Android.gms.internal.zzanb nicht gefunden wurde

Der Fehler wurde durch Aufrufen der Anweisung verursacht: FirebaseAuth.getInstance (). GetCurrentUser ();

Projekte build.gradle:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:2.2.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.google.gms:google-services:3.0.0'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

Module build.gradle:

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "xxx.yyy.zzz"
        minSdkVersion 19
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.Android.support:appcompat-v7:25.1.0'
    compile 'com.google.firebase:firebase-core:10.0.1'
    testCompile 'junit:junit:4.12'
    compile 'com.Android.support:design:25.1.0'
    compile 'com.firebaseui:firebase-ui:0.6.0'
    compile 'com.Android.support.test.espresso:espresso-core:2.2.2'
}

apply plugin: 'com.google.gms.google-services'

Bitte helfen Sie mir, diesen Fehler zu beheben.)

PS Ich habe diese Frage bereits gelesen ( Firebase Error kann nicht auf zzanb zugreifen, nachdem play-services-xxx: 9.8.00 verwendet wurde), aber ich habe nichts verstanden, was ich hinzufügen oder aus meinen build.gradle-Dateien entfernen muss meine Situation.

Sie mischen Bibliotheken aus alten und neuen Firebase-Versionen. Alles, was Sie von Firebase verwenden, sollte gleich sein. Diese Zeile verweist auf eine Bibliothek aus einer sehr alten Firebase-Version (bevor sie zur Firebase-Plattform bei Google wurde):

compile 'com.firebaseui:firebase-ui:0.6.0'

Wenn Sie die Firebase-UI-Bibliothek verwenden möchten, sollten Sie die neue Version von it verwenden, die der Version der von Ihnen verwendeten Hauptclientbibliothek entspricht. Sie verwenden 10.0.1. Entsprechend der Tabelle auf dem Firebase-UI-Github, den ich gerade verlinkt habe, möchten Sie diese Abhängigkeit:

compile 'com.firebaseui:firebase-ui:1.1.1'

Stellen Sie immer sicher, dass Ihre Firebase-UI-Bibliothek mit dem von Ihnen verwendeten Kern-Firebase-SDK übereinstimmt.

6
Doug Stevenson

In Ihrem Fall sieht es so aus, dass Doug's fix Ihr Problem gelöst hat, aber kürzlich ist das gleiche Problem mit einer anderen Hauptursache aufgetreten.

In unserem Fall hatten wir unser IDE - Projekt für die Verwendung von JDK8 konfiguriert, konnten jedoch nicht prüfen, welche Version des JDK im Terminal verwendet wurde. Da "React Native" von Gradle aus über die Befehlszeile ausgeführt wird, wenn Sie "Reaktives Native Run-Android" eingeben, hat Gradle versucht, mit JDK10 zu erstellen, was zu offensichtlichen Problemen führte, da Android derzeit nur bis zu JDK8 unterstützt. Nachdem wir das Terminal für die Verwendung von JDK8 konfiguriert hatten, wurde das Problem behoben.

TL; DR: Prüfen Sie, welche Version des JDK Sie im Terminal verwenden.

1
ZardozSpeaks