2016-07-19 7 views
1

Meine App muss Google Play-Dienste und Firebase integrieren, also habe ich die offizielle Demo heruntergeladen, Google Play-Dienste und Firebase SDK, Google Play-Dienste und Firebase SDK gewesen Update auf Version 9.2.1, funktioniert die Demo gut auf Android 5.0 +, aber Absturz auf Android 4.4.4.Google Play Services 9.2.1 und Google-Dienste-Plugin

Klicken Sie auf here, um die Demo herunterzuladen!

Hier ist meine build.gradle:

dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
compile 'com.android.support:appcompat-v7:23.2.1' 
compile 'com.android.support:support-v4:23.2.1' 

compile 'com.google.firebase:firebase-core:9.2.1' 
compile 'com.google.android.gms:play-services:9.2.1' 
} 

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

Und hier ist das Crash-Protokoll:

07-19 14: 34: 29,790 25.938-25.938/com.google.firebase.quickstart. Analytik E/FirebaseCrash: Fehler Absturz Berichterstattung com.google.firebase.crash.internal.zzg $ zza zu initialisieren:

com.google.androi d.gms.internal.zzsj $ zza: Kein akzeptables Modul gefunden. Die lokale Version ist 0 und die remote Version ist 0. bei com.google.firebase.crash.internal.zzg.zzbq (Unbekannte Quelle) bei com.google.firebase.crash.FirebaseCrash. (Unbekannte Quelle) at com. google.firebase.crash.FirebaseCrash.getInstance (Unbekannte Quelle) bei java.lang.reflect.Method.invokeNative (native Methode) bei java.lang.reflect.Method.invoke (Method.java:515) bei com. google.firebase.FirebaseApp.zza (Unbekannte Quelle) unter com.google.firebase.FirebaseApp.initializeApp (Unbekannte Quelle) unter com.google.firebase.FirebaseApp.initializeApp (Unknown Sourc e) bei com.google.firebase.FirebaseApp.zzeh (Unknown Source) bei com.google.firebase.provider.FirebaseInitProvider.onCreate (Unbekannt Quelle) bei android.content.ContentProvider.attachInfo (ContentProvider.java: 1591) bei android.content.ContentProvider.attachInfo (ContentProvider.java:1562) bei com.google.firebase.provider.FirebaseInitProvider.attachInfo (Unbekannt Quelle) bei android.app.ActivityThread.installProvider (ActivityThread .java: 5038) bei android.app.ActivityThread.installContentProviders (ActivityThread.java:4632) bei android.app.ActivityThread.handleBindApplication (ActivityThread.java:4566) bei android.app.ActivityThread.access $ 1500 (ActivityThread.java:145) bei android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1276) bei android.os.Handler.dispatchMessage (Handler.java:102) bei android.os.Looper.loop (Looper.java:145) bei android.app.ActivityThread.main (ActivityThread.java:5266) bei java.lang.reflect.Method.invokeNative (Native Me thod) bei java.lang.reflect.Method.invoke (Method.java:515) bei com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:826) bei com.android.internal.os.ZygoteInit.main (ZygoteInit.java:642) bei dalvik.system.NativeStart.main (Native Methode) Verursacht von: com.google.android.gms.internal.zzsj $ zza: Kein akzeptables Modul gefunden . Die lokale Version ist 0 und die Remoteversion ist 0. unter com.google.android.gms.internal.zzsj.zza (Unbekannte Quelle) unter com.google.firebase.crash.internal.zzg.zzbq (Unbekannte Quelle) um com.google.firebase.crash.FirebaseCrash. (Unknown Source) bei com.google.firebase.crash.FirebaseCrash.getInstance (Unbekannt Quelle) bei java.lang.reflect.Method.invokeNative (native Methode) auf Java .lang.reflect.Method.invoke (Method.java:515) unter com.google.firebase.FirebaseApp.zza (Unbekannte Quelle) unter com.google.firebase.FirebaseApp.initializeApp (Unbekannt N-Quelle) bei com.google.firebase.FirebaseApp.initializeApp (Unknown Source) bei com.google.firebase.FirebaseApp.zzeh (Unknown Source) bei com.google.firebase.provider.FirebaseInitProvider.onCreate (Unknown Quelle) bei android.content.ContentProvider.attachInfo (ContentProvider.java:1591) bei android.content.ContentProvider.attachInfo (ContentProvider.java:1562) bei com.google.firebase.provider.FirebaseInitProvider.attachInfo (Unbekannt Quelle) bei android.app.ActivityThread.installProvider (ActivityThread.java:5038) bei android.app.ActivityThread.installContentProviders (ActivityThread.java:4632) bei android.app.ActivityThread.handleBindApplication (ActivityThread.java:4566) bei android.app.ActivityThread.access $ 1500 (ActivityThread.java:145) um android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1276) bei android.os.Handler.dispatchMessage (Handler.java:102) bei android.os.Looper.loop (Looper.java:145) bei Android. app.ActivityThread.main (ActivityThread.java:5266) bei java.lang.reflect.Method.invokeNative (native Methode) bei java.lang.reflect.Method.invoke (Method.java:515) bei com. android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:826) bei com.android.internal.os.ZygoteInit.main (ZygoteInit.java:642) bei dalvik.system.NativeStart.main (Native Methode)

Kann mir jemand helfen?

+0

bitte teilen Sie den Link zu dem Demo-Projekt, das Sie verwendet oder einige Quellcode – ddb

+0

verwenden Sie bitte diese anstelle von Play-Service com.google.android.gms: play-services-maps: 9.2.1. lassen Sie mich wissen, das Ergebnis – DKV

+0

Hallo V V, thx für Ihre Antwort, aber es ist nicht richtig für meine Anforderung – Tjl

Antwort

0

Als ersten Schritt sollten Sie die spezifischen Play Service APIs identifizieren, die Ihre App benötigt, und nur diese anstelle von com.google.android.gms:play-services angeben. Listing play-services als Abhängigkeit ruft alle Play Services auf und bewirkt, dass die 64 KB-Begrenzung für Methodenreferenzen überschritten wird. Dies führt zu Problemen beim Ausführen auf Pre-Lollipop-Geräten. Die vollständige Liste der Play Services-APIs lautet provided here und die Firebase-APIs sind listed here. Suchen Sie die benötigten Dateien und listen Sie sie in Ihren Abhängigkeiten auf, anstatt com.google.android.gms:play-services.

Um ein Verständnis aller Bibliotheken zu erhalten, die in Mitleidenschaft gezogen werden, wenn Sie play-services als Abhängigkeit angeben, können Sie bei this gist schauen oder die Android Studio-Tool-Fenstern für Gradle öffnen und die androidDependencies Aufgabe unter :app\Tasks\android laufen.

0

Firebase ist jetzt in der Google-Play-Dienste enthalten - siehe https://developers.google.com/android/guides/releases#june_2016_-_v92. Aber irgendwie enthalten die Play-Dienste auf API 19 (alias Android 4.4) keine brauchbaren Firebase-Dateien. Sie müssen also nur die verwendeten APIs von den Play-Diensten kompilieren und die Firebase von ihnen ausschließen.

So Linie Kompilierung 'com.google.android.gms: play-Dienste: 9.2.1' entfernen und ersetzen mit so etwas wie Kompilierung ‚com.google.android.gms: Play-Dienste-NAME_OF_USED_API: 9.2.1'

Alternative Sie eine ältere Version der google-Play-Dienste nutzen können, die nicht Firebase enthält.

Verwandte Themen