查看 2022 年 Google I/O 大会上介绍的 Firebase 新动态。了解详情

Firebase-Projekte verstehen

Diese Seite bietet einen kurzen Überblick über mehrere wichtige Konzepte zu Firebase-Projekten. Wenn verfügbar, folgen Sie den Links, um detailliertere Informationen zu Funktionen, Diensten, Tools und Best Practices zu erhalten.

Beziehung zwischen Firebase-Projekten, -Apps und -Produkten

Ein Firebase-Projekt ist die oberste Entität für Firebase. In einem Projekt können Sie Ihre Apple-, Android- oder Web-Apps registrieren. Nachdem Sie Ihre Apps bei Firebase registriert haben, können Sie die Firebase SDKs für eine beliebige Anzahl von Firebase-Produkten wie Analytics, Cloud Firestore, Performance Monitoring oder Remote Config hinzufügen.

Ausführlichere Informationen zu diesem Vorgang finden Sie im Leitfaden „Erste Schritte“ für Ihre Plattform:
iOS+ | Android | Netz | Einheit | C++ | Flattern .

Verstehen der Hierarchie von Firebase-Projekten

Diagramm, das die grundlegende Hierarchie eines Firebase-Projekts zeigt, einschließlich des Projekts, seiner registrierten Apps und seiner bereitgestellten Ressourcen und Dienste Dieses Diagramm zeigt die grundlegende Hierarchie eines Firebase-Projekts. Hier sind die wichtigsten Beziehungen:

  • Ein Firebase-Projekt ist wie ein Container für alle Ihre Apps und alle Ressourcen und Dienste, die für das Projekt bereitgestellt werden.

  • Für ein Firebase-Projekt können eine oder mehrere Firebase-Apps registriert sein (z. B. sowohl die iOS- als auch die Android-Version einer App oder sowohl die kostenlose als auch die kostenpflichtige Version einer App).

  • Alle Firebase-Apps, die bei derselben Firebase-Projektfreigabe registriert sind, haben Zugriff auf dieselben Ressourcen und Dienste, die für das Projekt bereitgestellt werden . Hier sind einige Beispiele:

    • Alle im selben Firebase-Projekt registrierten Firebase-Apps nutzen dieselben Backends wie Firebase-Hosting, Authentifizierung, Echtzeitdatenbank, Cloud Firestore, Cloud-Speicher und Cloud-Funktionen.

    • Alle im selben Firebase-Projekt registrierten Firebase-Apps sind mit derselben Google Analytics-Property verknüpft, wobei jede Firebase-App ein separater Datenstrom in dieser Property ist.

Beziehung zwischen Firebase-Projekten und Google Cloud

Wenn Sie ein neues Firebase-Projekt erstellen, erstellen Sie eigentlich hinter den Kulissen ein Google Cloud-Projekt . Sie können sogar zuerst ein Google Cloud-Projekt erstellen und später Firebase zum Projekt hinzufügen. Sie können sich ein Google Cloud-Projekt als virtuellen Container für Daten, Code, Konfiguration und Dienste vorstellen.

Beachten Sie, dass Firebase für alle Firebase-Projekte automatisch ein Label von firebase:enabled auf der Seite Labels für Ihr Projekt in der Google Cloud Console hinzufügt. Erfahren Sie mehr über dieses Label in unseren FAQ .

Da ein Firebase-Projekt ein Google Cloud-Projekt ist :

  • Sie können mit einem Projekt sowohl in der Firebase-Konsole als auch in der Google Cloud-Konsole und in der Google APIs-Konsole interagieren.

  • Sie können Produkte und APIs sowohl von Firebase als auch von Google Cloud in einem Projekt verwenden.

  • Abrechnung und Berechtigungen für ein Projekt werden von Firebase und Google Cloud gemeinsam genutzt.

  • Eindeutige Kennungen für ein Projekt (wie Projektnummer und Projekt-ID ) werden von Firebase und Google Cloud gemeinsam genutzt.

  • Durch das Löschen eines Projekts wird es in Firebase und Google Cloud gelöscht.

Einrichten eines Firebase-Projekts und Registrieren von Apps

Sie können ein Firebase-Projekt einrichten und Apps in der Firebase-Konsole (oder für fortgeschrittene Anwendungsfälle über die Firebase-Verwaltungs-REST-API oder die Firebase-CLI ) registrieren. Wenn Sie ein Projekt einrichten und Apps registrieren, müssen Sie einige organisatorische Entscheidungen treffen und Firebase-spezifische Konfigurationsinformationen zu Ihren lokalen Projekten hinzufügen.

Für Produktions-Apps müssen Sie einen klaren Entwicklungsworkflow einrichten, der normalerweise die Verwendung mehrerer Umgebungen beinhaltet. Sehen Sie sich unsere Dokumentation zu Entwickler-Workflows an, einschließlich allgemeiner Best Practices und allgemeiner Sicherheitsrichtlinien zum Einrichten von Firebase-Projekten und Registrieren von Apps, um Ihren Entwicklungs-Workflow zu erstellen.

Interaktion mit einem Firebase-Projekt

Neben den Produkt-SDKs können Sie über mehrere verschiedene Tools und Schnittstellen direkt mit einem Firebase-Projekt interagieren.

Firebase-Konsole

Die Firebase-Konsole bietet die umfassendste Umgebung zum Verwalten von Firebase-Produkten, Apps und Einstellungen auf Projektebene.

Firebase-Konsole – Projektübersichtsbildschirm

Im linken Bereich der Konsole werden die Firebase-Produkte aufgelistet, die nach Kategorien der obersten Ebene geordnet sind. Greifen Sie oben im linken Steuerfeld auf die Einstellungen eines Projekts zu, indem Sie auf klicken. Zu den Einstellungen eines Projekts gehören Integrationen , Zugriffsberechtigungen und Abrechnung .

In der Mitte der Konsole werden Schaltflächen angezeigt, die Setup-Workflows starten, um verschiedene Arten von Apps zu registrieren. Nachdem Sie mit der Verwendung von Firebase begonnen haben, ändert sich der Hauptbereich der Konsole in ein Dashboard, das Statistiken zu den von Ihnen verwendeten Produkten anzeigt.

Da ein Firebase-Projekt auch ein Google Cloud-Projekt ist, müssen Sie möglicherweise feststellen, dass Sie für verschiedene Aufgaben oder Produkte die Google Cloud Console anstelle der Firebase-Konsole verwenden müssen.

Firebase CLI (ein Befehlszeilentool)

Firebase bietet auch die Firebase CLI zum Konfigurieren und Verwalten bestimmter Firebase-Produkte wie Firebase Hosting, Cloud Functions for Firebase und Firebase Extensions.

Nach der Installation der CLI haben Sie Zugriff auf den globalen firebase Befehl . Verwenden Sie die CLI, um Ihr lokales App-Verzeichnis mit einem Firebase-Projekt zu verknüpfen, und stellen Sie dann neue Versionen von Firebase -gehosteten Inhalten oder Funktionsaktualisierungen bereit.

Firebase Management-REST-API

Mit der Firebase Management REST API können Sie ein Firebase-Projekt programmgesteuert verwalten. Beispielsweise können Sie eine App programmgesteuert bei einem Projekt registrieren oder die bereits registrierten Apps auflisten ( iOS+ | Android | web ).

Firebase-Projektkennungen

Ein Firebase-Projekt kann im Firebase-Backend und in verschiedenen Entwicklerschnittstellen anhand verschiedener Kennungen identifiziert werden, darunter der Projektname , die Projektnummer und die Projekt-ID .

Der Projektname

Wenn Sie ein Projekt erstellen, geben Sie einen Projektnamen an . Diese Kennung ist der nur interne Name für ein Projekt in der Firebase-Konsole , der Google Cloud-Konsole und der Firebase -Befehlszeilenschnittstelle . Der Projektname wird in keinem öffentlich sichtbaren Firebase- oder Google Cloud-Produkt, -Dienst oder -Ressourcen angezeigt; es dient lediglich dazu, Ihnen zu helfen, leichter zwischen mehreren Projekten zu unterscheiden.

Sie können einen Projektnamen jederzeit in den Projekteinstellungen der Firebase-Konsole bearbeiten. Der Projektname wird im oberen Bereich angezeigt.

Die Projektnummer

Ein Firebase-Projekt (und das zugehörige Google Cloud-Projekt ) hat eine Projektnummer . Dies ist die von Google zugewiesene, weltweit eindeutige kanonische Kennung für das Projekt. Verwenden Sie diese Kennung, wenn Sie Integrationen konfigurieren und/oder API-Aufrufe an Firebase, Google oder Dienste von Drittanbietern tätigen.

Sie können eine Projektnummer nicht bearbeiten. Wenn Sie ein Projekt löschen, wird auch die Projektnummer gelöscht und kann von keinem anderen Projekt mehr verwendet werden.

Die Projekt-ID

Ein Firebase-Projekt (und das zugehörige Google Cloud-Projekt ) hat eine Projekt-ID . Dies ist eine benutzerdefinierte eindeutige Kennung für das Projekt in Firebase und Google Cloud. Wenn Sie ein Firebase-Projekt erstellen, weist Firebase dem Projekt automatisch eine eindeutige ID zu, die Sie jedoch während der Projekteinrichtung bearbeiten können. Dieser Bezeichner sollte im Allgemeinen als bequemer Alias ​​behandelt werden, um auf das Projekt zu verweisen.

Firebase-Konfigurationsdateien und -Objekte

Wenn Sie eine App bei einem Firebase-Projekt registrieren, stellt die Firebase-Konsole eine Firebase-Konfigurationsdatei (Apple-/Android-Apps) oder ein Konfigurationsobjekt (Web-Apps) bereit, die Sie direkt zu Ihrem lokalen App-Verzeichnis hinzufügen.

  • Für Apple-Apps fügen Sie eine Konfigurationsdatei GoogleService-Info.plist .
  • Für Android-Apps fügen Sie eine google-services.json Konfigurationsdatei hinzu.
  • Für Web-Apps fügen Sie ein Firebase-Konfigurationsobjekt hinzu.

Sie können jederzeit die Firebase-Konfigurationsdatei oder das Objekt einer App abrufen .

Eine Firebase-Konfigurationsdatei oder ein Objekt verknüpft eine App mit einem bestimmten Firebase-Projekt und seinen Ressourcen (Datenbanken, Speicher-Buckets usw.). Die Konfiguration umfasst „Firebase-Optionen“, bei denen es sich um Parameter handelt, die von Firebase- und Google-Diensten benötigt werden, um mit Firebase-Server-APIs zu kommunizieren und Clientdaten mit dem Firebase-Projekt und der Firebase-App zu verknüpfen. Hier sind die erforderlichen Mindest-"Firebase-Optionen":

  • API-Schlüssel : eine einfache verschlüsselte Zeichenfolge, die beim Aufrufen bestimmter APIs verwendet wird, die nicht auf private Benutzerdaten zugreifen müssen (Beispielwert: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO )

  • Projekt-ID : eine benutzerdefinierte eindeutige Kennung für das Projekt in Firebase und Google Cloud. Dieser Bezeichner kann in URLs oder Namen für einige Firebase-Ressourcen erscheinen, sollte aber im Allgemeinen als zweckmäßiger Alias ​​behandelt werden, um auf das Projekt zu verweisen. (Beispielwert: myapp-project-123 )

  • Anwendungs-ID ("AppID") : die eindeutige Kennung für die Firebase-App in ganz Firebase mit einem plattformspezifischen Format:

    • Firebase-Apps von Apple: GOOGLE_APP_ID (Beispielwert: 1:1234567890:ios:321abc456def7890 )
      Dies ist keine Apple-Bundle-ID.
    • Firebase-Android-Apps: mobilesdk_app_id (Beispielwert: 1:1234567890:android:321abc456def7890 )
      Dies ist kein Android-Paketname oder keine Android-Anwendungs-ID.
    • Firebase-Web-Apps: appId (Beispielwert: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c )

Der Inhalt der Firebase-Konfigurationsdatei oder des Objekts gilt als öffentlich, einschließlich der plattformspezifischen ID der App (Apple-Bundle-ID oder Android-Paketname) und der projektspezifischen Firebase-Werte wie API-Schlüssel, Projekt-ID, Echtzeitdatenbank-URL und Name des Cloud Storage-Buckets. Verwenden Sie daher Firebase-Sicherheitsregeln , um Ihre Daten und Dateien in Realtime Database , Cloud Firestore und Cloud Storage zu schützen.

Für Open-Source-Projekte empfehlen wir im Allgemeinen nicht, die Firebase-Konfigurationsdatei oder das Objekt der App in die Quellcodeverwaltung aufzunehmen, da Ihre Benutzer in den meisten Fällen ihre eigenen Firebase-Projekte erstellen und ihre Apps auf ihre eigenen Firebase-Ressourcen verweisen sollten (über ihre eigene Firebase-Konfigurationsdatei). Datei oder Objekt).

Allgemeine Limits für Firebase-Projekte, -Apps und -Sites

Hier sind einige allgemeine Beschränkungen für Firebase-Projekte, -Apps und -Websites:

  • Anzahl der Projekte pro Konto

    • Spark-Preisplan – Das Kontingent für die Projekterstellung ist auf eine geringere Anzahl von Projekten begrenzt (normalerweise etwa 5-10).
    • Blaze-Preisplan – Das Kontingent für die Projekterstellung pro Konto steigt erheblich, solange das zugehörige Cloud-Rechnungskonto einwandfrei ist.

    Die Begrenzung des Projekterstellungskontingents ist für die meisten Entwickler selten ein Problem, aber bei Bedarf können Sie eine Erhöhung des Projektkontingents anfordern .

    Beachten Sie, dass das vollständige Löschen eines Projekts 30 Tage dauert und auf das Projektkontingent angerechnet wird, bis das Projekt vollständig gelöscht ist.

  • Anzahl der Apps pro Projekt

    Firebase beschränkt die Gesamtzahl der Firebase-Apps in einem Firebase-Projekt auf 30.

    Sie sollten sicherstellen, dass alle Firebase-Apps innerhalb eines einzelnen Firebase-Projekts aus Sicht des Endbenutzers Plattformvarianten derselben Anwendung sind. Lesen Sie mehr über Mandantenfähigkeit in unseren Best Practices- Dokumenten.

    Erfahren Sie mehr über das Limit für Apps pro Projekt in den FAQ.

  • Anzahl der Hosting-Sites pro Projekt

    Die Multisite-Funktion von Firebase Hosting unterstützt maximal 36 Sites pro Projekt.

Starten Ihrer App