Ogólne najlepsze praktyki dotyczące konfigurowania projektów Firebase

Ta strona zawiera ogólne, sprawdzone metody wysokiego poziomu dotyczące konfigurowania projektów Firebase i rejestrowania aplikacji w projekcie, dzięki czemu masz przejrzysty przepływ pracy programistycznej korzystający z odrębnych środowisk. Po zapoznaniu się z najlepszymi praktykami na tej stronie zapoznaj się z naszymi ogólnymi wskazówkami dotyczącymi bezpieczeństwa .

Zrozumienie hierarchii projektów Firebase

Diagram przedstawiający podstawową hierarchię projektu Firebase, w tym projekt, zarejestrowane w nim aplikacje oraz udostępnione zasoby i usługi Ten diagram przedstawia podstawową hierarchię projektu Firebase. Oto kluczowe zależności:

  • Projekt Firebase jest jak kontener dla wszystkich aplikacji oraz wszelkich zasobów i usług udostępnionych dla projektu.

  • W projekcie Firebase może być zarejestrowana jedna lub więcej aplikacji Firebase (na przykład zarówno wersja aplikacji na iOS, jak i Androida lub zarówno bezpłatna, jak i płatna wersja aplikacji).

  • Wszystkie aplikacje Firebase zarejestrowane w tym samym projekcie Firebase mają dostęp do tych samych zasobów i usług udostępnionych dla projektu . Oto kilka przykładów:

    • Wszystkie aplikacje Firebase zarejestrowane w tym samym projekcie Firebase korzystają z tych samych backendów, takich jak hosting Firebase, uwierzytelnianie, baza danych w czasie rzeczywistym, Cloud Firestore, Cloud Storage i Cloud Functions.

    • Wszystkie aplikacje Firebase zarejestrowane w tym samym projekcie Firebase są powiązane z tą samą usługą Google Analytics, przy czym każda aplikacja Firebase stanowi oddzielny strumień danych w tej usłudze.

Gdzie w tej hierarchii mieści się projekt Google Cloud?

Jednym z aspektów hierarchii projektu Firebase, którego nie pokazano na powyższym diagramie, jest relacja z projektem Google Cloud. Projekt Firebase to tak naprawdę projekt Google Cloud, w którym włączono dodatkowe konfiguracje i usługi specyficzne dla Firebase . Pamiętaj, że wszystkie aplikacje zarejestrowane w tym samym projekcie Firebase również korzystają z tych samych zasobów i usług Google Cloud i mają do nich dostęp.

Dowiedz się więcej o relacji Firebase i Google Cloud w artykule Poznaj projekty Firebase

Rejestrowanie wariantów aplikacji w projektach Firebase

Oto kilka ważnych wskazówek dotyczących rejestrowania wariantów aplikacji w projekcie Firebase:

  • Upewnij się, że wszystkie aplikacje zarejestrowane w projekcie Firebase są wariantami platformowymi tej samej aplikacji z punktu widzenia użytkownika końcowego. Zarejestruj wersję internetową tej samej aplikacji lub gry na iOS, Androida i wersję internetową w tym samym projekcie Firebase.

  • Jeśli masz wiele wariantów kompilacji, które mogą współużytkować te same zasoby Firebase , zarejestruj je w tym samym projekcie Firebase. Przykładami są blog i aplikacja internetowa w tym samym projekcie lub zarówno bezpłatna, jak i płatna wersja tej samej aplikacji w tym samym projekcie.

  • Jeśli masz wiele wariantów kompilacji opartych na stanie wydania (a nie na typowej aktywności użytkownika końcowego lub dostępie, jak powyżej), zarejestruj każdy wariant w oddzielnym projekcie Firebase. Przykładem jest kompilacja debugowania i wydania — zarejestruj każdą z tych kompilacji we własnym projekcie Firebase.

    • Kompilacje oparte na stanie wydania nie powinny współdzielić tych samych zasobów Firebase, ponieważ grozi to zanieczyszczeniem danych debugowania lub nawet zastąpieniem danych produkcyjnych.

    • Warianty platformy każdego z tych wariantów kompilacji powinny znajdować się w tym samym projekcie Firebase. Na przykład zarejestruj kompilacje debugowania systemu iOS i Androida w projekcie Firebase „dev”, ponieważ oba mogą wchodzić w interakcję z tymi samymi danymi i zasobami nieprodukcyjnymi.

Unikanie wielodostępności

Wielodostępność może prowadzić do poważnych problemów z konfiguracją i prywatnością danych, w tym niezamierzonych problemów z agregacją analiz, współdzielonym uwierzytelnianiem, nadmiernie złożonymi strukturami baz danych i trudnościami z regułami bezpieczeństwa.

Ogólnie rzecz biorąc, jeśli zestaw aplikacji nie ma tych samych danych i konfiguracji, zdecydowanie rozważ zarejestrowanie każdej aplikacji w innym projekcie Firebase.

Na przykład, jeśli tworzysz aplikację z białą etykietą, każda niezależnie oznaczona aplikacja powinna mieć swój własny projekt Firebase, a wersje tej etykiety na iOS i Androida powinny znajdować się w tym samym projekcie Firebase. Każda niezależnie oznaczona aplikacja nie powinna (ze względu na prywatność) udostępniać danych innym osobom.

Następne kroki