Dieses Dokument enthält eine Checkliste mit Best Practices und Überlegungen, die Sie vor der Produktionseinführung einer Firebase-App beachten sollten.
Allgemeine Best Practices für die Veröffentlichung
Testen Sie alle Änderungen in der Firebase Local Emulator Suite (für unterstützte Produkte), bevor Sie sie in der Produktion bereitstellen. Gründliche Tests können helfen, kostspielige Fehler zu vermeiden.
Erzwingen Sie Firebase App Check für alle Dienste, die dies unterstützen. App Check sorgt dafür, dass nur Ihre tatsächlichen Apps auf Ihre Backend-Dienste und ‑Ressourcen zugreifen können.
Mit Firebase Remote Config-Roll-outs kannst du neue Funktionen und Updates für deine App sicher und nach und nach veröffentlichen.
Wenn Sie es noch nicht getan haben, sollten Sie Firebase Crashlytics einrichten. Das ist ein schlankes Echtzeit-Crash-Meldungssystem, mit dem Sie Stabilitätsprobleme, die die Qualität Ihrer App beeinträchtigen, erfassen, priorisieren und beheben können.
Limits für Preispläne kennen und Budgetbenachrichtigungen festlegen
Achten Sie darauf, dass Sie nach der Produktionsphase nicht die Nutzungslimits und ‑kontingente erreichen, insbesondere wenn Sie den kostenlosen Spark-Tarif nutzen. Wir empfehlen Ihnen, ein Upgrade auf das Pay-as-you-go-Preismodell Blaze durchzuführen.
Richten Sie Budgetbenachrichtigungen für Ihr Projekt ein.
Budgetbenachrichtigungen sind keine Budgetobergrenzen. Sie erhalten eine Benachrichtigung, wenn Sie den konfigurierten Grenzwert erreichen oder überschreiten, damit Sie Maßnahmen in Ihrer App oder Ihrem Projekt ergreifen können.
Sie können erweiterte Benachrichtigungen und Aktionen einrichten, z. B. Funktionen, die die Abrechnung als Reaktion auf Benachrichtigungen deaktivieren.
Sie können die Nutzung in den produktspezifischen Dashboards oder im zentralen Dashboard „Nutzung und Abrechnung“ in der Firebase-Konsole im Blick behalten.
Best Practices für Firebase-Projekte und ‑Apps einhalten
Unabhängig davon, ob Sie ein einzelner Entwickler oder ein Team für Unternehmen sind, ist es wichtig, dass Ihre Firebase-Projekte, -Anwendungen und -Ressourcen geschützt und gesichert sind und sich mit Änderungen im Team weiterentwickeln können.
Denken Sie daran, dass ein Firebase-Projekt im Grunde nur ein Google Cloud-Projekt ist, für das Firebase-Dienste und ‑Konfigurationen aktiviert sind. Daher sind viele von Google Cloud empfohlene Best Practices auch auf Firebase anwendbar.
Verschiedene Firebase-Projekte für Entwicklung, Tests und Produktion verwenden
Versuchen Sie, unerwartete Zugriffe auf das Projekt zu begrenzen, das mit Ihrer Produktions-App verknüpft ist. Weitere Informationen zum Einrichten von Entwicklungsabläufen
Schützen Sie Ihre wichtigen Projekte, insbesondere das Projekt, das mit Ihrer Produktions-App verknüpft ist.
Verwenden Sie Projektsperren, um das versehentliche Löschen von Projekten zu verhindern.
Wende in der Firebase Console das Tag „Prod“ an, um deine Produktionsumgebung leichter zu identifizieren.
Falls noch nicht geschehen, sollten Sie eine Google Cloud-Organisation einrichten und Ihre Firebase-Projekte hinzufügen.
Fügen Sie Ihren Firebase-Projekten mehrere Inhaber hinzu, insbesondere wenn sich Ihr Projekt nicht in einer Google Cloud-Organisation befindet. Weitere Informationen dazu, wann und wie Sie Inhaber für ein Firebase-Projekt zuweisen
Fügen Sie Projektmitglieder (auch als „Bevollmächtigte“ bezeichnet) als Google-Gruppen hinzu, anstatt sie einzeln hinzuzufügen.
Mithilfe von Gruppen können Sie Teammitgliedern Rollen im Bulk zuweisen und verwalten, wer Zugriff auf Ihr Firebase-Projekt hat, insbesondere wenn Teammitglieder rotieren oder das Unternehmen verlassen.
Gewähren Sie jedem Projektmitglied (auch als „Principal“ bezeichnet) die entsprechende Zugriffsebene auf Ihre Firebase-Projekte und ‑Ressourcen. Weitere Informationen finden Sie unter Projektzugriff mit Firebase IAM verwalten.
Alle betroffenen Projektmitglieder (auch als "Prinzip" bezeichnet) müssen die Einstellungen so einrichten, dass sie Benachrichtigungen zu bestimmten Produkten oder Projektstatus erhalten (z. B. Änderungen von Abrechnungstarifen oder Kontingentlimits). Weitere Informationen finden Sie unter Firebase-Benachrichtigungen erhalten.
Beschränken Sie Ihre Firebase API-Schlüssel auf die APIs, die auf der API-Zulassungsliste des Schlüssels stehen müssen. Weitere Informationen zu API-Schlüsseln finden Sie in der Sicherheitscheckliste für Firebase.
Bestimmte in Ihrer App verwendete Dienste vorbereiten
Für jedes Produkt und jeden Dienst, der in Ihrer App verwendet wird, gelten möglicherweise bestimmte Anforderungen, wenn er in der Produktion verwendet wird.
Google Analytics
Definieren Sie Zielgruppenbedingungen für Google Analytics, damit ab der Einführung Ihrer App Analysedaten erhoben werden.
Sie können den Export von Google Analytics-Daten nach BigQuery aktivieren, um Ihre Daten mit BigQuery SQL zu analysieren oder sie zur Verwendung in Ihren eigenen Tools zu exportieren.
Beschränken Sie Nutzereigenschaften auf Informationen, die für den gesamten Lebenszyklus Ihrer App relevant sind. Die Anzahl der Nutzereigenschaften ist eingeschränkt und sie können nicht archiviert werden.
Prüfen Sie die Einstellungen für Google Analytics-Rollen für Ihre Google Analytics-Properties und ‑Konten. Diese Berechtigungen werden getrennt von den IAM-Berechtigungen und ‑Rollen des Firebase-Projekts verwaltet.
Prüfen Sie, ob die App Store-ID und die Team-ID (falls erforderlich) in den Projekteinstellungen der Firebase-Konsole korrekt sind.
App Check
Achten Sie darauf, dass Ihre Team-ID in den Projekteinstellungen der Firebase-Konsole korrekt ist.
Falls noch nicht geschehen, erzwingen Sie Firebase App Check für jeden Dienst, der sie unterstützt. App Check sorgt dafür, dass nur Ihre tatsächlichen Apps auf Ihre Backend-Dienste und ‑Ressourcen zugreifen können.
Authentication
Deaktivieren Sie alle Anbieter, die Sie nicht verwenden, insbesondere die anonyme Authentifizierung.
Wenn in Ihrer Anwendung „Über Google anmelden“ verwendet wird, personalisieren Sie Ihren OAuth-Zustimmungsbildschirm.
Domain und Absender für den AuthenticationE-Mail-Versanddienst anpassen.
Wenn Sie SMS-Bestätigungsdienste von Identity Platform verwenden, erzwingen Sie Firebase App Check und konfigurieren Sie eine SMS-Regionsrichtlinie, um Ihre App vor SMS-Missbrauch zu schützen.
Implementieren Sie auf Apple-Plattformen eine Fehlerbehandlung für häufige Authentication-Fehler.
Fügen Sie in den Projekteinstellungen der Firebase-Konsole einen Release-SHA-1-Hash für das Signaturzertifikat der Anwendung hinzu. Der SHA-1-Hash ist erforderlich, wenn Ihre App die Anmeldung per Telefonnummer oder „Über Google anmelden“ verwendet (für die eine OAuth-Clientanforderung gilt).
Fügen Sie eine Zugriffssteuerung für Ihre Domains hinzu, um eine unbefugte Nutzung zu verhindern. Gewähren Sie in der Firebase-Konsole im Abschnitt Authentication Zugriff auf Ihre Produktionsdomain. Das ist besonders wichtig, wenn Sie Produkte verwenden, die auf Firebase Security Rules basieren.
Cloud Firestore
Konfigurieren Sie Ihren Cloud Firestore Security Rules, um unbeabsichtigten Datenzugriff zu verhindern.
Verwenden Sie ProGuard zum Verkleinern von Code in Ihrem Release-Build. Ohne ProGuard kann das Cloud Firestore SDK und seine Abhängigkeiten die APK-Größe erhöhen.
Cloud Messaging
Sie können den Export von Cloud Messaging-Daten nach BigQuery aktivieren, um Ihre Daten mit BigQuery SQL zu analysieren oder sie zur Verwendung in Ihren eigenen Tools zu exportieren.
Laden Sie Ihren APNs-Authentifizierungsschlüssel für Cloud Messaging in der Firebase-Konsole in Apple-Apps hoch. Wenn Sie APNS-Zertifikate verwenden, muss Ihr Produktions-APNS-Zertifikat hochgeladen werden.
Cloud Storage
- Konfigurieren Sie Ihren Cloud Storage Security Rules, um unbeabsichtigten Datenzugriff zu verhindern.
Crashlytics
Achten Sie darauf, dass alle relevanten Projektmitglieder (auch als „Hauptverantwortliche“ bezeichnet) ihre Einstellungen so festlegen, dass sie Benachrichtigungen zu Crashlytics oder zum Projektstatus erhalten (z. B. Änderungen am Abrechnungsmodell oder Kontingentlimits). Weitere Informationen finden Sie unter Firebase-Benachrichtigungen erhalten.
Sie können den Export von Crashlytics-Daten nach BigQuery aktivieren, um Ihre Daten mit BigQuery SQL zu analysieren oder sie für die Verwendung in Ihren eigenen Tools zu exportieren.
(nur native Android- und iOS-Apps) Aktivieren Sie die KI-Unterstützung in Crashlytics, um schneller herauszufinden, warum ein Absturz aufgetreten ist und was Sie dagegen tun können.
Laden Sie die dSYM-Datei für Release-Builds zur Verwendung in Crashlytics hoch. Achten Sie darauf, dass Xcode dSYMs automatisch verarbeiten und die Dateien hochladen kann.
Laden Sie die ProGuard-Zuordnung für Release-Builds zur Verwendung in Crashlytics hoch. Der Upload ist über die Firebase-Befehlszeile möglich.
Verknüpfen Sie Firebase mit Google Play, um einen besseren Überblick über den Zustand Ihrer Android-App zu erhalten. So können Sie beispielsweise die Absturzberichte Ihrer App nach Google Play-Track filtern, um Ihr Dashboard besser auf bestimmte Builds auszurichten.
Bei Builds, die auf Android ausgerichtet sind und IL2CPP verwenden, müssen Sie für jede einzelne Build-Ausführung native Symbole hochladen, für die Sie Symbole verwenden möchten, unabhängig davon, ob Änderungen am Code oder an der Konfiguration vorgenommen wurden.
Dynamic Links
- Dynamic Links wird eingestellt. Wir empfehlen daher, den Dienst zu verlassen. Weitere Informationen finden Sie in den häufig gestellten Fragen zur Einstellung.
Firebase ML
Weitere Informationen finden Sie unter Firebase ML Apple-App für die Produktion vorbereiten.
Weitere Informationen finden Sie unter Firebase ML Android-App für die Produktion vorbereiten.
Performance Monitoring
Achten Sie darauf, dass jedes zuständige Projektmitglied (auch als „Hauptverantwortlicher“ bezeichnet) seine Einstellungen so festlegt, dass es Benachrichtigungen zu Performance Monitoring oder zum Projektstatus erhält (z. B. zu Änderungen am Abrechnungsmodell oder zu Kontingentlimits). Weitere Informationen finden Sie unter Firebase-Benachrichtigungen erhalten.
Sie können den Export von Performance Monitoring-Daten nach BigQuery aktivieren, um Ihre Daten mit BigQuery SQL zu analysieren oder sie zur Verwendung in Ihren eigenen Tools zu exportieren.
Realtime Database
Konfigurieren Sie Ihren Realtime Database Security Rules, um unbeabsichtigten Datenzugriff zu verhindern.
Achten Sie darauf, dass Sie für eine Skalierung gerüstet sind. Realtime Database hat ein Standardkontingent, das für die meisten Anwendungen groß genug ist. Einige Anwendungen benötigen jedoch möglicherweise zusätzliche Kapazität.
Konfigurieren Sie Ihre ProGuard-Regeln, damit sie mit der Realtime Database funktionieren.
Remote Config
- Achten Sie darauf, dass experimentelle Remote Config-Regeln keine Auswirkungen auf Ihre Release-Nutzer haben und dass in Ihrer App die richtigen Server- und In-App-Standardeinstellungen verwendet werden.