Informazioni sui progetti Firebase

Questa pagina offre brevi panoramiche di diversi concetti importanti relativi ai progetti Firebase. Se disponibili, segui i link per trovare informazioni più dettagliate su funzionalità, servizi, strumenti e best practice.

Relazione tra progetti, app e prodotti Firebase

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

Scopri di più su questa procedura nella guida introduttiva per la tua piattaforma:
iOS+ | Android | web | Unity | C++ | Flutter.

Informazioni sulla gerarchia dei progetti Firebase

Diagramma che mostra la gerarchia di base di un progetto Firebase, inclusi il progetto, le app registrate e le risorse e i servizi di cui è stato eseguito il provisioning Questo diagramma mostra la gerarchia di base di un progetto Firebase. Ecco le relazioni principali:

  • Un progetto Firebase è come un contenitore per tutte le tue app e per eventuali risorse e servizi di cui è stato eseguito il provisioning per il progetto.

  • Un progetto Firebase può avere una o più app Firebase registrate (ad esempio, sia le versioni per iOS sia quelle per Android di un'app o sia le versioni senza costi sia quelle a pagamento di un'app).

  • Tutte le app Firebase registrate nello stesso progetto Firebase condividono e hanno accesso a tutte le stesse risorse e a tutti gli stessi servizi di cui è stato eseguito il provisioning per il progetto. Ecco alcuni esempi:

    • Tutte le app Firebase registrate nello stesso progetto Firebase condividono gli stessi backend, ad esempio Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage e Cloud Functions.

    • Tutte le app Firebase registrate nello stesso progetto Firebase sono associate alla stessa proprietà Google Analytics, in cui ogni app Firebase è uno stream di dati distinto.

Relazione tra progetti Firebase e Google Cloud

Quando crei un nuovo progetto Firebase, stai in realtà creando un progetto Google Cloud in background. Puoi anche creare prima un progetto Google Cloud, poi aggiungere Firebase in un secondo momento. Puoi considerare un progetto Google Cloud come un contenitore virtuale per dati, codice, configurazione e servizi.

Tieni presente che per tutti i progetti Firebase, Firebase aggiunge automaticamente un'etichetta difirebase:enabled nella pagina Etichette per il tuo progetto nella console Google Cloud. Scopri di più su questa etichetta nelle nostre Domande frequenti.

Poiché un progetto Firebase è un progetto Google Cloud:

  • Puoi accedere al progetto e interagire con esso nella console Firebase, nella console Google Cloud e nella console API di Google.

  • Puoi interagire con il progetto utilizzando Firebase CLI, gcloud CLI e qualsiasi risorsa Terraform di Google.

  • Puoi utilizzare i prodotti e le API di Firebase e Google Cloud nel progetto.

  • I ruoli e le autorizzazioni IAM per il progetto sono condivisi tra Firebase e Google Cloud. Qualsiasi accesso di un membro del progetto (ovvero un principale) al tuo progetto Google Cloud verrà applicato anche al tuo progetto Firebase (e viceversa).

  • La fatturazione del progetto è condivisa tra Firebase e Google Cloud. Se la fatturazione è abilitata per il tuo progetto Google Cloud, per il tuo progetto Firebase sarà valido il piano tariffario Blaze con pagamento a consumo di Firebase.

  • Gli identificatori univoci del progetto (ad esempio il numero di progetto e l'ID progetto) vengono condivisi tra Firebase e Google Cloud.

  • Qualsiasi gerarchia delle risorse applicata al progetto Google Cloud (ad esempio organizzazione, cartelle, ecc.) verrà applicata anche al progetto Firebase.

  • L'eliminazione del progetto comporta l'eliminazione in Firebase e Google Cloud.

  • L'eliminazione o la modifica di una risorsa o di dati all'interno del progetto si applica a Firebase e Google Cloud.

Configurare un progetto Firebase e registrare le app

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

Per le app di produzione, devi configurare un flusso di lavoro di sviluppo chiaro, che in genere prevede l'utilizzo di più ambienti. Consulta la nostra documentazione sui workflow per gli sviluppatori, incluse best practice generali e linee guida generali sulla sicurezza per configurare i progetti Firebase e registrare le app per creare il tuo workflow di sviluppo.

Interazione con un progetto Firebase

Oltre agli SDK di prodotto, puoi interagire direttamente con un progetto Firebase utilizzando diversi strumenti e interfacce.

Console Firebase

La console Firebase offre l'ambiente più completo per gestire i prodotti, le app e le impostazioni a livello di progetto di Firebase.

Il riquadro a sinistra della console elenca i prodotti Firebase, organizzati in categorie di primo livello. Nella parte superiore del riquadro laterale sinistro, fai clic su per accedere alle impostazioni di un progetto. Le impostazioni di un progetto includono le integrazioni, le autorizzazioni di accesso e la 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 relative ai prodotti che utilizzi.

Tieni presente che, poiché un progetto Firebase è anche un progetto Google Cloud, potresti scoprire che varie attività o prodotti richiedono l'utilizzo della console Google Cloud anziché della console Firebase.

Firebase CLI (uno strumento a riga di comando)

Firebase offre anche l'interfaccia a riga di comando Firebase per configurare e gestire prodotti Firebase specifici, come Firebase Hosting,Cloud Functions for Firebase e Firebase Extensions.

Dopo aver installato l'interfaccia a riga di comando, hai accesso al comando firebase globale. Utilizza l'interfaccia a riga di comando per collegare la directory dell'app locale a un progetto Firebase, quindi esegui il deployment di nuove versioni dei contenuti ospitati su Firebase o aggiornamenti delle funzioni.

API REST Firebase Management

Con l'API REST Firebase Management, puoi gestire un progetto Firebase in modo programmatico. Ad esempio, puoi registrare programmaticamente un'app in un progetto o elencare le app già registrate (iOS+ | Android | web).

Identificatori dei progetti Firebase

Un progetto Firebase può essere identificato nel backend di Firebase e in varie interfacce per sviluppatori utilizzando identificatori diversi, tra cui il nome del progetto, il numero del progetto e l'ID progetto.

Il nome del progetto

Quando crei un progetto, fornisci un nome progetto. Questo identificatore è il nome solo per uso interno di un progetto nella console Firebase, nella console Google Cloud e nell'interfaccia a riga di comando Firebase. Il nome del progetto non è visibile in nessun prodotto, servizio o risorsa Firebase o Google Cloud visibile al pubblico; serve semplicemente per aiutarti a distinguere più facilmente più progetti.

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

Il numero del progetto

Un progetto Firebase (e il suo progetto Google Cloud associato) ha un numero di progetto. Si tratta dell'identificatore canonico univoco a livello globale assegnato da Google al progetto. Utilizza questo identificatore quando configuri le integrazioni e/o effettui chiamate API a Firebase, Google o servizi di terze parti.

Non puoi modificare un numero di progetto. Se elimini un progetto, viene eliminato anche il numero del progetto e non potrà mai essere utilizzato di nuovo da nessun altro progetto.

L'ID del progetto

Un progetto Firebase (e il suo progetto Google Cloud associato) ha un ID progetto. Si tratta di un identificatore univoco definito dall'utente per il progetto in Google Cloud e Firebase. Quando crei un progetto Firebase, Firebase assegna automaticamente un ID univoco al progetto, ma puoi modificarlo durante la configurazione del progetto. In genere, questo identificatore dovrebbe essere trattato come un alias di convenienza per fare riferimento al progetto.

File e oggetti di configurazione di Firebase

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

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

Puoi ottenere il file o l'oggetto di configurazione Firebase di un'app in qualsiasi momento.

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

  • Chiave API: una semplice stringa criptata utilizzata per la chiamata di determinate API che non richiedono l'accesso ai dati utente privati (valore di esempio: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO)

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

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

    • App per Apple Firebase: GOOGLE_APP_ID (valore di esempio: 1:1234567890:ios:321abc456def7890)
      Non si tratta di un ID bundle Apple.
    • App Firebase per Android: mobilesdk_app_id (valore di esempio: 1:1234567890:android:321abc456def7890)
      Non si tratta di un nome del pacchetto Android o di un ID applicazione Android.
    • App web Firebase: appId (valore di esempio: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c)

I contenuti del file o dell'oggetto di configurazione di Firebase sono considerati pubblici, incluso l'ID specifico della piattaforma dell'app (ID bundle Apple o nome del pacchetto Android) e i valori specifici del progetto Firebase, come la chiave API, l'ID progetto, l'URL Realtime Database e il nome del bucket Cloud Storage. Pertanto, utilizza Firebase Security Rules per proteggere i tuoi dati e file in Realtime Database, Cloud Firestore, e Cloud Storage.

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

Limiti generali per progetti, app e siti Firebase

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

  • Numero di progetti per account

    • Piano tariffario Spark: la quota di creazione dei progetti è limitata a un numero inferiore di progetti (in genere circa 5-10).
    • Piano tariffario Blaze: la quota di creazione dei progetti per account aumenta notevolmente a condizione che l'account Cloud Billing associato sia in regola.

    Il limite della quota per la creazione di progetti raramente rappresenta un problema per la maggior parte degli sviluppatori, ma se necessario puoi richiedere un aumento della quota per i progetti.

    Tieni presente che l'eliminazione completa di un progetto richiede 30 giorni e viene conteggiata ai fini della quota di progetti fino a quando il progetto non viene completamente eliminato.

  • Numero di app per progetto

    Firebase limita il numero totale di app Firebase all'interno di un progetto Firebase a 30.

    Devi assicurarti che tutte le app Firebase all'interno di un singolo progetto Firebase siano varianti della piattaforma della stessa applicazione dal punto di vista dell'utente finale. Scopri di più sulla multiproprietà nelle nostre best practice.

    Scopri di più sul limite di app per progetto nelle domande frequenti.

  • Numero di siti Hosting per progetto

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

Lanciare l'app