Weitere Informationen zu Android und Firebase

Bei der Entwicklung Ihres Android-Projekts mit Firebase werden Sie möglicherweise Konzepte entdecken, die für Firebase unbekannt oder spezifisch sind. Diese Seite soll diese Fragen beantworten oder Sie auf Ressourcen hinweisen, um mehr zu erfahren.

Wenn Sie Fragen zu einem Thema haben auf dieser Seite nicht abgedeckt, können Sie eines unserer besuchen Online - Communities . Wir werden diese Seite auch regelmäßig mit neuen Themen aktualisieren. Schauen Sie also noch einmal vorbei, um zu sehen, ob wir das Thema hinzugefügt haben, über das Sie mehr erfahren möchten!

Firebase Assistant-Plugin für Android Studio

Der Firebase Assistant ist ein Android Studio-Plugin, das Ihre Android-App bei einem Firebase-Projekt registriert und die erforderlichen Firebase-Konfigurationsdateien, -Plugins und -Abhängigkeiten zu Ihrem Android-Projekt hinzufügt – alles aus Android Studio!

Folgen Sie den Anweisungen in der Android gestartet Seite bekommen die Firebase - Assistenten zu verwenden. Stellen Sie sicher , dass Sie die meisten up-to-date verwenden Versionen von Android Studio und die Firebase Assistant (gehen Sie zu Datei> Nach Updates suchen ).

Wenn Sie bestimmte Produkte Firebase wählen , um Ihre Anwendung hinzuzufügen, erklärt der Firebase - Assistent automatisch die erforderlichen Abhängigkeiten in Ihrer app/build.gradle Datei. Um jedoch Firebase-Funktionen zu verwenden, die über die aktuellen Fähigkeiten des Firebase-Assistenten hinausgehen, möchten Sie möglicherweise einige manuelle Änderungen an diesen Abhängigkeiten vornehmen:

  • Wenn Sie die verwenden Firebase Android BoM , aktualisieren Sie die Abhängigkeiten in Ihrem Modul (app-Ebene) Gradle Datei ( in der Regel app/build.gradle ) die BoM Plattform zu importieren. Außerdem müssen Sie die Versionen aus jeder Abhängigkeitszeile der Firebase-Bibliothek entfernen.

  • Wenn Sie eine verwenden möchten Kotlin Erweiterungen Bibliothek , ändern die Abhängigkeit Zeile in Modul (app-Ebene) Gradle Datei ( in der Regel hinzugefügt app/build.gradle ) , um die verwenden ktx anstelle Version der Firebase - Bibliothek.

Google-Dienste – Plug-in und Konfigurationsdatei

Als Teil auf Ihr Android - Projekt hinzuzufügen Firebase, müssen Sie die hinzufügen google-services - Plugin und eine google-services.json Konfigurationsdatei zu einem Projekt.

Wenn Sie Firebase zu dem Android - Projekt über das Hinzufügen Firebase - Konsole , die API - Management REST oder die Firebase CLI , müssen Sie manuell das Plugin und Konfigurationsdatei zu Ihrem Projekt hinzufügen. Falls Sie verwenden jedoch Firebase - Assistenten werden diese Aufgaben automatisch für Sie während der Installation durchgeführt.

Besuchen Sie die Android - Dokumentation , um zu erfahren , wie die Google - Services - Plug - und - Konfigurationsdatei zusammen zu arbeiten.

Firebase Android Stückliste (Stückliste)

Mit der Firebase Android-Stückliste (Bill of Materials) können Sie alle Ihre Firebase-Bibliotheksversionen verwalten, indem Sie nur eine Version angeben – die Version der Stückliste.

Wenn Sie die Firebase-Stückliste in Ihrer App verwenden, ruft die Stückliste automatisch die einzelnen Bibliotheksversionen ab, die der Stücklistenversion zugeordnet sind. Alle einzelnen Bibliotheksversionen werden kompatibel sein. Wenn Sie die Version der Stückliste in Ihrer App aktualisieren, werden alle Firebase-Bibliotheken, die Sie in Ihrer App verwenden, auf die Versionen aktualisiert, die dieser Stücklistenversion zugeordnet sind.

Um zu erfahren , welche sind Bibliotheksversionen Firebase zu einer bestimmten BoM Version abgebildet, überprüfen Sie die Release Notes für die BoM - Version. Wenn Sie die Bibliotheksversionen zugeordnet einer BoM - Version im Vergleich zu anderen BoM - Version vergleichen müssen, verwenden Sie den Vergleich Widget unten.

Erfahren Sie mehr über Gradle Unterstützung für BoM - Plattformen .

Hier ist , wie die Firebase Android BoM zu verwenden , um declare Abhängigkeiten in Ihrem Modul (app-Ebene) Gradle Datei ( in der Regel app/build.gradle ). Bei Verwendung der Stückliste geben Sie in den Abhängigkeitszeilen keine einzelnen Bibliotheksversionen an.

dependencies {
  // Import the BoM for the Firebase platform
  implementation platform('com.google.firebase:firebase-bom:28.4.1')

  // Declare the dependencies for the desired Firebase products without specifying versions
  // For example, declare the dependencies for Firebase Authentication and Cloud Firestore
  implementation 'com.google.firebase:firebase-auth'
  implementation 'com.google.firebase:firebase-firestore'
}

Hier sind einige häufig gestellte Fragen zur Verwendung der Firebase Android BoM:

Firebase BoM-Versionen vergleichen

Kotlin-Erweiterungen (KTX)-Bibliotheken

Firebase Kotlin Extensions (KTX)-Bibliotheken sind kleine Begleiter zu den Firebase SDKs, mit denen Sie schönen und idiomatischen Kotlin-Code schreiben können.

Um eine KTX - Bibliothek in Ihrer Anwendung zu verwenden, ändern Sie Ihre Abhängigkeit des schließen -ktx Suffix. Jede KTX-Bibliothek hat automatisch eine Abhängigkeit von der Basisbibliothek, sodass Sie nicht beide Abhängigkeiten in Ihre App aufnehmen müssen.

dependencies {
  // Import the BoM for the Firebase platform (learn more)
  implementation platform('com.google.firebase:firebase-bom:28.4.1')

  // Declare the base library
  implementation 'com.google.firebase:firebase-analytics'

  // Declare the KTX library instead (which automatically has a dependency on the base library)
  implementation 'com.google.firebase:firebase-analytics-ktx'
}

Jede KTX-Bibliothek bietet verschiedene syntaktische Erweiterungen der Basisbibliothek. Die Analytics KTX-Bibliothek erleichtert beispielsweise die Protokollierung von Ereignissen:

Vor dem (mit der Basisbibliothek)

val analytics = FirebaseAnalytics.getInstance();
val bundle = Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
analytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM, bundle);

Nach dem (mit der KTX - Bibliothek statt)

firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_ITEM) {
    param(FirebaseAnalytics.Param.ITEM_ID, id)
    param(FirebaseAnalytics.Param.ITEM_NAME, name)
    param(FirebaseAnalytics.Param.CONTENT_TYPE, "image")
}

Alle Firebase - Produkte bieten eine KTX Bibliothek mit Ausnahme von Firebase ML und App - Indexierung.

Wenn Sie noch nicht haben, überprüfen Sie die out - API - Referenz - Dokumentation für die KTX - Bibliotheken.

Funktionsmodule und Bereitstellung von Play-Features

Ab Mai 2021 (Firebase BoM v28.0.0) können Firebase Android SDKs in dynamischen Funktionsmodulen verwendet werden, die getrennt von Ihrem Basisanwendungsmodul installiert werden.

Um die Unterstützung für dynamisches Feature Module, fügen Sie die folgende Abhängigkeit zu Ihrer Basismoduls build.gradle Datei:

dependencies {
  implementation 'com.google.firebase:firebase-dynamic-module-support:16.0.0-beta01'
}

Nachdem Sie nun die Unterstützung dynamischer Module hinzugefügt haben, können Sie Firebase SDK-Abhängigkeiten (mit oder ohne Firebase BoM) zu Funktionsmodulen Ihrer App hinzufügen und wie gewohnt verwenden.

Zum Beispiel, wenn Ihre Anwendung Realtime - Datenbank an der Macht nutzt Echtzeit ein bestimmte Funktion , die Sie die hinzufügen könnten firebase-database Abhängigkeit zum build.gradle des Zusatzmoduls eher als das Basismodul. Dadurch wird die Downloadgröße für die meisten Benutzer reduziert.

Beachten Sie die folgenden Vorbehalte, wenn Sie Firebase SDKs in Funktionsmodulen verwenden:

  • Produkte wie dynamische Links oder Firebase In-App - Messaging , die auf dem Analytics verlassen first_open Ereignis können dieses Ereignis verpassen , wenn in einem dynamischen Modul mit bestimmten Eigenschaften verwendet.

  • Wenn Sie Cloud Firestore und Authentication zusammen verwenden, sollten Sie beide immer in dasselbe Modul aufnehmen. Wenn dies nicht möglich ist, dann stellen Sie sicher , dass die Authentifizierung vor dem Cloud - Firestor geladen wird; andernfalls weisen einige Cloud Firestore-Vorgänge möglicherweise einen falschen Authentifizierungsstatus auf.

  • Bei der Verwendung von firebase-crashlytics-ndk als Abhängigkeit eines dynamischen Feature - Modul, müssen Sie die festlegen unstrippedNativeLibsDir Eigenschaft in Ihrer App build.gradle Datei, wie in der beschriebene Crashlytics NDK Dokumentation .

Weitere Informationen über die Funktion Module und Play - Funktion Lieferung, besuchen Überblick Play - Funktion Lieferung .

Google-Dienste Gradle-Plugin vs. Google Play-Dienste vs. Google Play Store

Mehrere Teile des Google-, Firebase- und Android-Ökosystems haben ähnliche Namenskonventionen. Hier ist eine kurze Erklärung für jeden:

Gradle-Plug-in für Google-Dienste
Ein Gradle Plugin ( com.google.gms.google-services ) , die läuft bei der Erstellung , um sicherzustellen , dass Ihre Anwendung die richtige Konfiguration für den Zugriff Firebase und Google APIs hat
Trotz seines Namens hat dieses Plugin keine Beziehung zu Google Play-Diensten (siehe nächster Eintrag) und hat keinen Einfluss auf die Fähigkeiten Ihrer App zur Laufzeit.
Dieses Plugin verarbeitet auch die google-services.json Datei , die Sie Ihre App als Teil der Einrichtung Firebase hinzuzufügen. Erfahren Sie mehr über die Google - Dienste Gradle Plugin .
Google Play-Dienste
Ein unsichtbarer Hintergrunddienst, der auf einem Android-Gerät ausgeführt wird und mehrere gängige Google-APIs (wie Google Maps und Google Sign In) für Apps auf dem Gerät bereitstellt
Durch die Zentralisierung dieser gemeinsamen APIs in einem einzigen Dienst reduziert es die Größe anderer Apps und ermöglicht es einem Gerät, automatische Sicherheitsupdates und Funktionsverbesserungen ohne Betriebssystemupdate zu erhalten. Erfahren Sie mehr über Google Play - Dienste .
Google Play Store
Ein Store zum Herunterladen von Apps, Filmen, Büchern und mehr auf ein Android-Gerät
Als Entwickler verwalten Sie die Distribution, Releases etc. für Ihre App über die Google Play Console. Wenn ein Gerät über den Google Play Store verfügt, werden auch die Google Play-Dienste ausgeführt (siehe vorheriger Eintrag). Erfahren Sie mehr über den Google Play Store für Entwickler .
Google Play Spiele-Dienste
Eine Reihe von APIs für Entwickler von mobilen Spielen
Erfahren Sie mehr über Google Play Games - Dienste und wie zu integrieren Firebase mit Ihrem Google Play Games - Dienste projizieren .

Open-Source-Ressourcen für Firebase Android SDKs

Firebase unterstützt die Open-Source-Entwicklung und wir ermutigen Community-Beiträge und Feedback.

Firebase Android-SDKs

Die meisten Android - SDKs sind Firebase als Open - Source - Bibliotheken in unserem öffentlichen entwickelt Firebase GitHub - Repository . Wir arbeiten aktiv daran, die verbleibenden privat entwickelten Firebase-Bibliotheken bald auf unseren öffentlichen GitHub zu verschieben!

Schnellstart-Beispiele

Firebase verwaltet eine Sammlung von Schnellstartbeispielen für die meisten Firebase-APIs auf Android. Finden Sie diese Schnellstarts in unserer öffentlichen Firebase GitHub - Repository quickstart .

Sie können jeden Schnellstart als Android Studio-Projekt öffnen und dann auf einem mobilen Gerät oder einem virtuellen Gerät (AVD) ausführen. Oder Sie können diese Schnellstartanleitungen als Beispielcode für die Verwendung von Firebase SDKs verwenden.

Weitere interessante Themen