Google is committed to advancing racial equity for Black communities. See how.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Comprendi i progetti Firebase

Questa pagina offre brevi panoramiche di diversi concetti importanti sui progetti Firebase. Se disponibili, segui i collegamenti per trovare informazioni più dettagliate su funzionalità, servizi e persino altre piattaforme. In fondo a questa pagina, trova un elenco di best practice generali per i progetti Firebase.

Relazione tra progetti, app e prodotti Firebase

Un progetto Firebase è l'entità di primo livello per Firebase. In un progetto, crei app Firebase registrando le tue app iOS, Android o web. Dopo aver registrato le tue app con Firebase, puoi aggiungere gli SDK Firebase per qualsiasi numero di prodotti Firebase , come Analytics, Cloud Firestore, Performance Monitoring o Remote Config.

Scopri informazioni più dettagliate su questo processo nelle guide introduttive ( iOS | Android | web | Unity | C ++ ).

Relazione tra i progetti Firebase e Google Cloud Platform (GCP)

Quando crei un nuovo progetto Firebase nella console Firebase, stai effettivamente creando un progetto Google Cloud Platform (GCP) dietro le quinte. Puoi pensare a un progetto GCP come a un contenitore virtuale per dati, codice, configurazione e servizi. Un progetto Firebase è un progetto GCP che include configurazioni e servizi aggiuntivi specifici per Firebase. Puoi persino creare prima un progetto GCP, quindi aggiungere Firebase al progetto in un secondo momento.

Poiché un progetto Firebase è un progetto GCP:

Configurazione di un progetto Firebase e registrazione di app

Puoi configurare un progetto Firebase e registrare app nella console Firebase (o, per casi d'uso avanzati, tramite l' API REST di Firebase Management o la CLI di Firebase ). Quando imposti un progetto e registri le app, devi prendere alcune decisioni organizzative e aggiungere informazioni di configurazione specifiche di Firebase ai tuoi progetti locali.

Assicurati di rivedere alcune best practice generali a livello di progetto (in fondo a questa pagina) prima di impostare un progetto e registrare le app.

Il nome del progetto

Quando crei un progetto, fornisci un nome di progetto . Questo identificatore è il nome solo interno per un progetto nella console Firebase , nella console GCP e nella CLI di Firebase . Il nome del progetto non è esposto in alcun prodotto, servizio o risorsa Firebase o GCP pubblicamente visibile; serve semplicemente per aiutarti a distinguere più facilmente tra più progetti.

Puoi modificare il nome di un progetto in qualsiasi momento nelle progetto della console Firebase. Il nome del progetto viene visualizzato nel riquadro superiore.

Il numero del progetto

Un progetto Firebase (e il progetto GCP associato ) ha un numero di progetto . Questo è l'identificatore canonico univoco globale assegnato da Google per il progetto. Utilizza questo identificatore quando configuri integrazioni e / o esegui chiamate API a Firebase, Google o servizi di terze parti.

Chiamate API e numero del progetto

Per molte chiamate API, è necessario includere un identificatore univoco per un progetto. Sebbene molte API accettino l' ID progetto , si consiglia di utilizzare il numero del progetto per effettuare chiamate API a Firebase, Google o servizi di terze parti.

Ulteriori informazioni sull'utilizzo degli identificatori di progetto, in particolare il numero di progetto, nello standard AIP 2510 di Google.

Trova il numero del progetto

  • Console Firebase: fai clic su progetto . Il numero del progetto viene visualizzato nel riquadro superiore.

  • Firebase CLI: esegui firebase projects:list . Il numero del progetto viene visualizzato insieme a tutti i progetti Firebase associati al tuo account.

  • API REST di Firebase Management: chiama projects.list . Il corpo della risposta contiene il numero di progetto nell'oggetto FirebaseProject .

L'ID del progetto

Un progetto Firebase (e il progetto GCP associato ) ha un ID progetto . Si tratta di un identificatore univoco definito dall'utente per il progetto in tutta Firebase e GCP. Quando crei un progetto Firebase, Firebase assegna automaticamente un ID univoco al progetto, ma puoi modificarlo durante la configurazione del progetto. Questo identificatore dovrebbe generalmente essere trattato come un comodo alias per fare riferimento al progetto.

Se elimini un progetto, anche l'ID progetto viene eliminato e non potrà mai essere riutilizzato da nessun altro progetto.

Risorse Firebase e ID progetto

L'ID progetto viene visualizzato nelle risorse Firebase pubblicamente visibili, ad esempio:

  • Predefinito Hosting sottodominio - PROJECT_ID .web.app e PROJECT_ID .firebaseapp.com
  • Predefinito in tempo reale URL del database - PROJECT_ID .firebaseio.com
  • Predefinito Cloud Storage nome bucket - PROJECT_ID .appspot.com

Per tutte le suddette risorse, puoi creare istanze non predefinite. I nomi visibili pubblicamente dei valori non predefiniti sono completamente personalizzabili. Puoi connettere domini personalizzati a un sito ospitato da Firebase, suddividere il database in tempo reale e creare più bucket di Cloud Storage (visita la pagina Introduzione specifica della piattaforma).

La CLI di Firebase e l'ID del progetto

In alcuni casi d'uso, potresti avere più progetti Firebase associati alla stessa directory dell'app locale. In queste situazioni, quando si utilizza il Firebase CLI , è necessario passare alla --project bandiera con la firebase comandi di comunicare quale progetto Firebase si desidera interagire.

Puoi anche impostare un alias di progetto per ogni progetto Firebase in modo da non dover ricordare gli ID progetto.

Chiamate API e ID progetto

Per molte chiamate API, è necessario includere un identificatore univoco per un progetto. Sebbene molte API accettino l'ID progetto, si consiglia di utilizzare il numero del progetto per effettuare chiamate API a Firebase, Google o servizi di terze parti.

Ulteriori informazioni sull'utilizzo degli identificatori di progetto, in particolare il numero di progetto, nello standard AIP 2510 di Google.

Trova l'ID del progetto

  • Console Firebase: fai clic su progetto . L'ID del progetto viene visualizzato nel riquadro superiore.

  • Firebase CLI: esegui firebase projects:list . L'ID progetto viene visualizzato insieme a tutti i progetti Firebase associati al tuo account.

  • API REST di Firebase Management: chiama projects.list . Il corpo della risposta contiene l'ID del progetto nell'oggetto FirebaseProject .

File di configurazione e oggetti Firebase

Quando registri un'app con un progetto Firebase, la console Firebase fornisce un file di configurazione Firebase (app iOS / Android) o un oggetto di configurazione (app web) che aggiungi direttamente alla directory dell'app locale.

  • Per le app iOS, aggiungi un file di configurazione GoogleService-Info.plist .
  • Per le app Android, aggiungi un file di configurazione google-services.json .
  • Per le app web, aggiungi un oggetto di configurazione Firebase.

In qualsiasi momento, puoi ottenere il file di configurazione o l'oggetto Firebase di un'app .

Un file di configurazione o un oggetto Firebase associa un'app a un progetto Firebase specifico e alle sue risorse (database, bucket di archiviazione e così via). La configurazione include "Opzioni Firebase", che sono parametri richiesti da Firebase e dai servizi Google per comunicare con le API del server Firebase e per associare i dati del client al progetto Firebase e all'app Firebase. Ecco le "opzioni Firebase" minime obbligatorie:

  • Chiave API : una semplice stringa crittografata utilizzata quando si chiamano determinate API che non devono accedere ai dati utente privati ​​(valore di esempio: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO )

  • ID progetto : un identificatore univoco definito dall'utente per il progetto su tutti i Firebase e GCP. Questo identificatore può essere visualizzato negli URL o nei nomi di alcune risorse Firebase, ma in genere dovrebbe essere considerato come un comodo alias per fare riferimento al progetto. (valore di esempio: myapp-project-123 )

  • ID applicazione ("AppID") : l'identificatore univoco per l'app Firebase in tutta Firebase con un formato specifico della piattaforma:

    • App Firebase per iOS: GOOGLE_APP_ID (valore di esempio: 1:1234567890:ios:321abc456def7890 )
      Questo non è un ID bundle Apple.
    • App Android Firebase: mobilesdk_app_id (valore di esempio: 1:1234567890:android:321abc456def7890 )
      Questo non è un nome di pacchetto Android o un ID applicazione Android.
    • App Web Firebase: appId (valore di esempio: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c )

Il contenuto del file di configurazione o dell'oggetto Firebase è considerato pubblico, incluso l'ID specifico della piattaforma dell'app (ID bundle iOS o nome del pacchetto Android) e i valori specifici del progetto Firebase, come la chiave API, l'ID progetto, l'URL del database in tempo reale e Nome del bucket di archiviazione. Detto questo, utilizza le regole di sicurezza Firebase per proteggere i tuoi dati e file in Realtime Database , Cloud Firestore e Cloud Storage .

Per i progetti open source, in genere sconsigliamo di includere il file di configurazione Firebase dell'app o l'oggetto nel controllo del codice sorgente perché, nella maggior parte dei casi, gli utenti dovrebbero creare i propri progetti Firebase e indirizzare le proprie app alle proprie risorse Firebase (tramite la propria configurazione Firebase file o oggetto).

Gestire un progetto Firebase

Assicurati di esaminare le best practice generali a livello di progetto (in fondo a questa pagina) per considerazioni che potrebbero influire sulla gestione di un progetto Firebase.

Strumenti per gestire un progetto

Console Firebase

La console Firebase offre l'ambiente più ricco per la gestione di prodotti, app e impostazioni a livello di progetto Firebase.

Console Firebase - schermata panoramica del progetto

Il pannello di sinistra della console elenca i prodotti Firebase, organizzati per categorie di primo livello. Nella parte superiore del pannello di sinistra, accedi alle impostazioni di un progetto facendo clic su . Le impostazioni di un progetto includono integrazioni , autorizzazioni di accesso e fatturazione .

Al centro della console sono visualizzati i pulsanti che avviano i flussi di lavoro di configurazione per registrare vari tipi di app. Dopo aver iniziato a utilizzare Firebase, l'area principale della console si trasforma in una dashboard che mostra le statistiche sui prodotti che utilizzi.

Firebase CLI (uno strumento a riga di comando)

Firebase offre anche la Firebase CLI per la configurazione e la gestione di prodotti Firebase specifici, come Firebase Hosting e Cloud Functions for Firebase.

Dopo aver installato la CLI, hai accesso al comando firebase globale . Utilizza la CLI per collegare la directory dell'app locale a un progetto Firebase , quindi distribuisci nuove versioni dei contenuti ospitati da Firebase o aggiornamenti alle funzioni.

API REST di Firebase Management

Utilizzando l' API REST di Firebase Management , puoi gestire in modo programmatico un progetto Firebase. Ad esempio, puoi registrare a livello di codice un'app con un progetto o elencare le app già registrate ( iOS | Android | web ).

Migliori pratiche generali

Aggiunta di app a un progetto

Assicurati che tutte le app all'interno di un progetto siano varianti della piattaforma della stessa applicazione dal punto di vista dell'utente finale. È consigliabile registrare le versioni iOS, Android e Web della stessa app o gioco con lo stesso progetto Firebase. Tutte le app in un progetto condividono generalmente le stesse risorse Firebase (database, bucket di archiviazione, ecc.).

Se disponi di più varianti di build con ID bundle iOS diversi o nomi di pacchetti Android definiti, puoi registrare ogni variante con un progetto Firebase separato. Tuttavia, se disponi di varianti che condividono le stesse risorse Firebase, registrale con lo stesso progetto Firebase.

Sebbene non vi siano limitazioni al numero di app all'interno di un progetto, la registrazione di un'app può creare uno o più ID client OAuth 2.0 sottostanti. C'è un limite di circa 30 ID client che possono essere creati all'interno di un singolo progetto.

Multi-tenancy

Non è consigliabile collegare più app e / o siti web logicamente indipendenti a un singolo progetto (spesso chiamato "multi-tenancy"). Il multi-tenancy può portare a gravi problemi di configurazione e riservatezza dei dati, inclusi problemi non intenzionali con l'aggregazione di analisi, autenticazione condivisa, strutture di database eccessivamente complesse e difficoltà con le regole di sicurezza.

In genere, se un insieme di app non condivide gli stessi dati e configurazioni, valuta fortemente la possibilità di registrare ogni app con un progetto Firebase diverso.

Ad esempio, se sviluppi un'applicazione white label, ciascuna app etichettata in modo indipendente dovrebbe avere il proprio progetto Firebase. Ogni app non condivide e non dovrebbe (per motivi di privacy) condividere dati con le altre.

Nota alcuni limiti generali per progetti, app e siti Firebase:

  • Numero di progetti per account

    • Piano Spark di livello gratuito: la quota di creazione del progetto è limitata a un numero inferiore di progetti (in genere circa 5-10).
    • Piani a pagamento: la quota di creazione del progetto per account di fatturazione aumenta in modo sostanziale fintanto che l'account di fatturazione Cloud associato ha una buona reputazione.

    Il limite alla quota di creazione del progetto è raramente un problema per la maggior parte degli sviluppatori, ma se necessario, puoi richiedere un aumento della quota del progetto .

    Tieni presente che l'eliminazione completa di un progetto richiede 30 giorni e conta per la quota del progetto fino a quando il progetto non viene completamente eliminato.

  • Numero di app per progetto

    Sebbene non vi siano limitazioni al numero di app all'interno di un progetto, la registrazione di un'app può creare uno o più ID client OAuth 2.0 sottostanti. C'è un limite di circa 30 ID client che possono essere creati all'interno di un singolo progetto.

  • Numero di siti di hosting per progetto

    La funzionalità multisito di Firebase Hosting supporta un massimo di 36 siti per progetto.

Avvio della tua app