2016-10-18 4 views
0

Ich bin mit Android Studio, und ich möchte Firebase Analytics und Firebase Anzeigen (AdMob) verwenden. Ich folgte dem alle verfügbaren Unterlagen und addierten die folgenden in meiner App-Ebene gradle Datei im Abschnitt Abhängigkeiten:Zu viele Bibliotheken hinzugefügt Firebase in Project

compile 'com.google.firebase:firebase-core:9.6.1' 
compile 'com.google.firebase:firebase-ads:9.6.1' 

Allerdings habe ich festgestellt, dass im Rahmen des Projekts „Externe Bibliotheken“ es gibt eine Tonne von Firebase Bibliotheken war, dass ich möchte nicht verwenden (siehe Bild).

External Libraries

Ich weiß nicht, wie das alles in den Projektarbeitsbereich erhalten, wenn sie in den Aufbau einbezogen werden, und wenn ich einfach weiter und sie löschen gehen.

Jede Hilfe wird geschätzt.

Antwort

0

Die nicht benötigten Bibliotheken Firebase kamen tatsächlich aus der Google-Service-Abhängigkeit Play (kompilieren 'com.google.android.gms: play-Dienste: 9.6.1).

Ich bin mit Android und all diesen Bibliotheken nicht sehr vertraut, daher konnte ich die Beziehung zwischen Google Play Service und Firebase-Bibliotheken nicht sehen, und deshalb hatte ich es in meiner Frage nicht erwähnt.

Wie auch immer, ich entfernt es und alle nicht benötigten Bibliotheken Firebase aus dem Projekt entfernt wurden. Jetzt füge ich einfach die spezifische API für Google Play-Dienste hinzu, die für meine App erforderlich ist, und nicht die gesamte Google Play-Abhängigkeit.

1

Sie sollten nicht für diesen Satz von Abhängigkeiten alle diejenigen haben, aber Sie werden etwas mehr haben.

können Sie führen:

./gradlew app:dependencies 

(vorausgesetzt, Ihr Modul wird als "App"), um eine Liste der Abhängigkeiten zu sehen. Für mich ergibt dies die folgende Liste.

+--- com.google.firebase:firebase-core:9.6.1 | \--- com.google.firebase:firebase-analytics:9.6.1 | +--- com.google.android.gms:play-services-basement:9.6.1 | | \--- com.android.support:support-v4:24.0.0 -> 24.2.1 (*) | +--- com.google.firebase:firebase-common:9.6.1 | | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | | \--- com.google.android.gms:play-services-tasks:9.6.1 | | \--- com.google.android.gms:play-services-basement:9.6.1 (*) | \--- com.google.firebase:firebase-analytics-impl:9.6.1 | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | +--- com.google.firebase:firebase-iid:9.6.1 | | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | | \--- com.google.firebase:firebase-common:9.6.1 (*) | \--- com.google.firebase:firebase-common:9.6.1 (*) \--- com.google.firebase:firebase-ads:9.6.1 +--- com.google.android.gms:play-services-ads:9.6.1 | +--- com.google.android.gms:play-services-ads-lite:9.6.1 | | \--- com.google.android.gms:play-services-basement:9.6.1 (*) | +--- com.google.android.gms:play-services-base:9.6.1 | | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | | \--- com.google.android.gms:play-services-tasks:9.6.1 (*) | +--- com.google.android.gms:play-services-clearcut:9.6.1 | | +--- com.google.android.gms:play-services-base:9.6.1 (*) | | \--- com.google.android.gms:play-services-basement:9.6.1 (*) | +--- com.google.android.gms:play-services-basement:9.6.1 (*) | \--- com.google.android.gms:play-services-gass:9.6.1 | \--- com.google.android.gms:play-services-basement:9.6.1 (*) \--- com.google.firebase:firebase-analytics:9.6.1 (*)

Alle hier Bibliotheken sind wie erwartet - es ist eine Mischung aus dem gemeinsamen Code für verschiedene Teile von Firebase, die Analytics-Bibliothek aus Kern und der play-services-ads Bibliothek.

Stellen Sie sicher, dass Sie seit dem Ändern Ihrer Gradle-Datei einen sauberen Build erstellt haben, und prüfen Sie, ob etwas von anderen com.google.firebase-Bibliotheken (wie FirebaseUI) abhängt.

+0

Hallo Ian, danke für deine Antwort. – Pako88

+0

Ich habe getan, was Sie sagten, und seltsamerweise enthält die Ausgabe, die ich aus dem ./gradlew app: Abhängigkeiten Befehl erhält, Abhängigkeiten zu allen Bibliotheken, die ich in meiner Frage erwähnt habe, z. Firebase-Auth, Firebase-Crash usw., die ich nicht benutze! Ich habe keine Ahnung was FirebaseUI ist, dass du erwähnt hast. Ich möchte nur Firebase-Analysen und Anzeigen, und ich habe keine Ahnung, wie all diese anderen Bibliotheken in meinem Projekt gelandet sind. Neben AdMob habe ich auch InMobi und Leadbolt SDKs zur Vermittlung hinzugefügt, aber ich habe diese nicht erstellt. Ich habe das Projekt gereinigt, aber keine Änderung. Kann ich noch etwas anderes machen? – Pako88

Verwandte Themen