Ich versuche Firebase Cloud Messaging meiner App ohne Erfolg hinzuzufügen, wie ich die folgende Ausnahme erhalten:Cryptic FCM 10.2.0 Failure - FirebaseInitProvider, NoSuchMethodError
1 27336-27336/com.company.here E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.company.here, PID: 27336
java.lang.NoSuchMethodError: No static method zzb(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; in class Lcom/google/android/gms/common/internal/zzaa; or its super classes (declaration of 'com.google.android.gms.common.internal.zzaa' appears in /data/app/com.company.here.debug-1/base.apk)
at com.google.firebase.provider.FirebaseInitProvider.zza(Unknown Source)
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source)
at android.app.ActivityThread.installProvider(ActivityThread.java:5883)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:5475)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5414)
at android.app.ActivityThread.-wrap2(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1546)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6154)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:757)
Hier ist, was ich so überprüft haben weit:
- google-Dienste 3.0.0 im Projekt gradle Datei festgelegt ist
- ich nur eine Abhängigkeit zu Feuerbasis bezogen haben, die 10.2.0
- ist, ich habe jack ena ausgeblutet, damit ich Lambdas verwenden kann
- Ich habe ReactiveAndroid und Retrofit in das Projekt integriert, vielleicht interagieren sie schlecht? Das sagte ich nicht verdächtig nichts gesehen, wenn
./gradlew app:dependencies
multiDexEnabled = true
Versuchte läuft, machen keinen Unterschied- eine benutzerdefinierte Hatte
applicationIdSuffix
für Debugbuilds, versucht, es zu entfernen, aber es machte auch keinen Unterschied - Positionierung von
apply plug: 'com.google.gms.google-services
scheint nicht wichtig, derzeit am Ende der Gradle-Datei
Was könnte dies verursachen? Soweit ich das beurteilen kann, ruft FirebaseInitProvider
eine interne statische Methode von attachInfo
auf, die wiederum versucht, eine statische Methode für eine SDK-private Klasse aufzurufen, die anscheinend nicht existiert.
Haben Sie andere Google-Play-Services-Abhängigkeiten? Wenn ja, müssen sie auf die gleiche Version des Firebase eins sein. Der Fehler scheint darauf hinzudeuten, dass Sie Google-Bibliotheken mit unterschiedlichen Versionen einschließen. –
Wie ich bereits erwähnt habe, ist nichts Verdächtiges aufgetaucht, wenn ./gradlew app: dependencies läuft. Ich bezweifle nicht, dass dies eine Möglichkeit ist, aber wenn es keine transitive Abhängigkeit ist, gibt es keinen offensichtlichen Fehler. – Chris