Firebase-Projekte

Auf dieser Seite finden Sie kurze Übersichten über einige wichtige Konzepte zu Firebase-Projekten. 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 Ebene 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.

Weitere Informationen zu diesem Prozess finden Sie im Startleitfaden für Ihre Plattform:
iOS+ | Android | Web | Unity | C++ | Flutter.

Hierarchie von Firebase-Projekten

Diagramm mit der grundlegenden Hierarchie eines Firebase-Projekts, einschließlich des Projekts, der registrierten Apps und der 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.

  • In einem 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 im selben Firebase-Projekt registriert sind, nutzen und haben Zugriff auf alle Ressourcen und Dienste, die für das Projekt bereitgestellt werden. Hier einige Beispiele:

    • Alle Firebase-Apps, die im selben Firebase-Projekt registriert sind, verwenden dieselben Back-Ends, z. B. Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage und Cloud Functions.

    • Alle Firebase-Apps, die im selben Firebase-Projekt registriert sind, sind mit derselben Google Analytics-Property verknüpft. Jede Firebase-App ist ein separater Datenstream in dieser Property.

Beziehung zwischen Firebase-Projekten und Google Cloud

Wenn Sie ein neues Firebase-Projekt erstellen, legen Sie damit im Hintergrund ein Google Cloud-Projekt an. Sie können auch zuerst ein Google Cloud-Projekt erstellen und Firebase später hinzufügen. Ein Google Cloud-Projekt kann als virtueller Container für Daten, Code, Konfiguration und Dienste betrachtet werden.

Für alle Firebase-Projekte wird in der Google Cloud-Konsole automatisch das Label firebase:enabled auf der Seite Labels für Ihr Projekt hinzugefügt. Weitere Informationen zu diesem Label

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

  • Sie können in der Firebase-Konsole, der Google Cloud-Konsole und der Google APIs Console auf das Projekt zugreifen und damit interagieren.

  • Sie können mit dem Projekt über die Firebase-Befehlszeile, die gcloud CLI und alle Terraform-Ressourcen von Google interagieren.

  • Sie können Produkte und APIs von Firebase und Google Cloud im Projekt verwenden.

  • IAM-Berechtigungen und ‑Rollen für das Projekt werden von Firebase und Google Cloud gemeinsam genutzt. Jeder Zugriff, den ein Projektmitglied (d. h. ein Prinzipal) auf Ihr Google Cloud-Projekt hat, gilt auch für Ihr Firebase-Projekt (und umgekehrt).

  • Die Abrechnung für das Projekt wird von Firebase und Google Cloud gemeinsam genutzt. Wenn die Abrechnung für Ihr Google Cloud-Projekt aktiviert ist, wird für Ihr Firebase-Projekt der Firebase-Tarif „Blaze“ (Pay as you go) angewendet.

  • Eindeutige Kennzeichnungen für das Projekt, z. B. die Projektnummer und die Projekt-ID, werden in Firebase und Google Cloud gemeinsam verwendet.

  • Jede Ressourcenhierarchie, die auf Ihr Google Cloud-Projekt angewendet wird (z. B. Organisation, Ordner usw.), wird auch auf Ihr Firebase-Projekt angewendet.

  • Wenn Sie das Projekt löschen, wird es in Firebase und Google Cloud gelöscht.

  • Wenn Sie eine Ressource oder Daten im Projekt löschen oder ändern, gilt das für Firebase und Google Cloud.

Firebase-Projekt einrichten und Apps registrieren

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

Für Produktions-Apps müssen Sie einen klaren Entwicklungs-Workflow einrichten, der in der Regel die Verwendung mehrerer Umgebungen umfasst. 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 Entwickler-Workflow zu erstellen.

Mit einem Firebase-Projekt interagieren

Neben den Produkt-SDKs können Sie mit verschiedenen Tools und Schnittstellen direkt mit einem Firebase-Projekt interagieren.

Firebase Console

Die Firebase-Konsole bietet die umfassendste Umgebung für die Verwaltung von Firebase-Produkten, Apps und Einstellungen auf Projektebene.

In der linken Seitenleiste der Console werden die Firebase-Produkte nach Kategorien der obersten Ebene aufgelistet. Klicken Sie oben in der linken Seitenleiste auf , um auf die Einstellungen eines Projekts zuzugreifen. Die Einstellungen eines Projekts umfassen Integrationen, Zugriffsberechtigungen und Abrechnung.

In der Mitte der Konsole werden Schaltflächen angezeigt, mit denen Sie Einrichtungs-Workflows zum Registrieren verschiedener Arten von Apps starten können. Nachdem Sie Firebase verwenden, ändert sich der Hauptbereich der Konsole in ein Dashboard, in dem Statistiken zu den von Ihnen verwendeten Produkten angezeigt werden.

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

Firebase-Befehlszeile (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. Mit der CLI können Sie Ihr lokales App-Verzeichnis mit einem Firebase-Projekt verknüpfen und dann neue Versionen von in Firebase gehosteten Inhalten oder Updates für Funktionen bereitstellen.

Firebase Management REST API

Mit der Firebase Management REST API können Sie ein Firebase-Projekt programmatisch verwalten. Sie können beispielsweise eine App programmatisch für ein Projekt registrieren oder die bereits registrierten Apps auflisten (iOS+ | Android | Web).

Firebase-Projekt-IDs

Ein Firebase-Projekt kann im Firebase-Backend und in verschiedenen Entwicklerschnittstellen anhand unterschiedlicher 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 intern verwendete Name für ein Projekt in der Firebase-Konsole, der Google Cloud-Konsole und der Firebase-CLI. Der Projektname wird in keinem öffentlich sichtbaren Firebase- oder Google Cloud-Produkt, ‑Dienst oder ‑Ressource angezeigt. Er dient lediglich dazu, Ihnen die Unterscheidung zwischen mehreren Projekten zu erleichtern.

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 global eindeutige kanonische Kennung, die von Google für das Projekt zugewiesen wurde. Sie können sie für das Konfigurieren von Integrationen und/oder zum Senden von API-Aufrufen an Firebase, Google oder Drittanbieterdienste verwenden.

Sie können eine Projektnummer nicht bearbeiten. Wenn Sie ein Projekt löschen, wird auch die Projektnummer gelöscht und kann nie wieder für ein anderes Projekt verwendet werden.

Projekt-ID

Ein Firebase-Projekt (und das zugehörige Google Cloud-Projekt) hat eine Projekt-ID. Dies ist eine vom Nutzer definierte eindeutige Kennung für das Projekt in allen Firebase- und Google Cloud-Produkten. Wenn Sie ein Firebase-Projekt erstellen, weist Firebase dem Projekt automatisch eine eindeutige ID zu. Sie können diese jedoch während der Projekteinrichtung bearbeiten. Diese Kennung sollte im Allgemeinen als praktischer Alias zum Verweisen auf das Projekt betrachtet werden.

Firebase-Konfigurationsdateien und -Objekte

Wenn Sie eine App in einem Firebase-Projekt registrieren, wird in der Firebase-Konsole eine Firebase-Konfigurationsdatei (Apple-/Android-Apps) oder ein Konfigurationsobjekt (Web-Apps) bereitgestellt, die Sie direkt Ihrem lokalen App-Verzeichnis hinzufügen.

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

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

Eine Firebase-Konfigurationsdatei oder ein Firebase-Konfigurationsobjekt verknüpft eine App mit einem bestimmten Firebase-Projekt und dessen Ressourcen (Datenbanken, Speicher-Buckets usw.). Die Konfiguration umfasst „Firebase-Optionen“, also Parameter, die von Firebase und Google-Diensten benötigt werden, um mit Firebase-Server-APIs zu kommunizieren und Clientdaten dem Firebase-Projekt und der Firebase-App zuzuordnen. Das sind die erforderlichen Mindest-„Firebase-Optionen“:

  • API-Schlüssel: Ein einfacher verschlüsselter String, der beim Aufrufen bestimmter APIs verwendet wird, die nicht auf private Nutzerdaten zugreifen müssen (Beispielwert: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO)

  • Projekt-ID: eine vom Nutzer definierte, eindeutige Kennung für das Projekt in Firebase und Google Cloud. Diese Kennung kann in URLs oder Namen für einige Firebase-Ressourcen verwendet werden. Generell dient sie aber als praktischer Alias, um auf das Projekt zu verweisen. (Beispielwert: myapp-project-123)

  • Anwendungs-ID („AppID“): Die eindeutige Kennung für die Firebase-App in allen Firebase-Produkten mit einem plattformspezifischen Format:

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

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

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

Allgemeine Limits für Firebase-Projekte, ‑Apps und ‑Websites

Hier sind einige allgemeine Limits für Firebase-Projekte, ‑Apps und ‑Websites:

  • Anzahl der Projekte pro Google-Konto (E-Mail-Adresse)

    • Spark-Tarif: Das Kontingent für die Projekterstellung ist auf eine kleine Anzahl von Projekten begrenzt (in der Regel etwa 5 bis 10).
    • Blaze-Preismodell: Das Kontingent für die Projekterstellung ist weiterhin begrenzt, kann aber durch die Verknüpfung eines Cloud Billing-Kontos mit einem einwandfreien Ruf erhöht werden.

    Beachten Sie Folgendes zum Kontingent für die Projekterstellung:

    • Dieses Limit ist nicht Firebase-spezifisch. Die Firebase-Limits für das Projektkontingent sind dieselben wie für Google Cloud.
    • In seltenen Fällen können Sie eine Erhöhung des Projektkontingents beantragen.
    • Das vollständige Löschen eines Projekts dauert 30 Tage und wird auf das Projektkontingent angerechnet, bis das Projekt vollständig gelöscht ist.

    Allgemeine Best Practices für die Einrichtung von Firebase-Projekten

  • Anzahl der Apps pro Projekt

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

    Alle Firebase-Apps in einem Firebase-Projekt sollten aus Endnutzersicht Plattformvarianten derselben Anwendung sein. Weitere Informationen zur Mehrinstanzenfähigkeit finden Sie in unserer Dokumentation zu Best Practices.

    Weitere Informationen zum Limit für Apps pro Projekt

  • Anzahl der Hosting-Websites pro Projekt

    Die Firebase Hosting-Funktion für mehrere Websites unterstützt maximal 36 Websites pro Projekt.

App starten