Hai altri problemi o non trovi il tuo problema descritto di seguito? Segnala un bug o richiedi una funzionalità e partecipa alle discussioni su Stack Overflow.
Progetti e app Firebase
Cos'è un progetto Firebase?
Un progetto Firebase è l'entità di primo livello per Firebase. In un progetto, puoi registrare le tue app per Apple, Android o web. Dopo aver registrato le tue app con Firebase, puoi aggiungere alla tua app gli SDK Firebase specifici per prodotto, ad esempio Analytics, Cloud Firestore, Crashlytics o Remote Config.
Devi registrare le varianti delle app Apple, Android e web all'interno di un singolo progetto Firebase. Puoi utilizzare più progetti Firebase per supportare più ambienti, come sviluppo, gestione temporanea e produzione.
Ecco alcune risorse per saperne di più sui progetti Firebase:
- Informazioni sui progetti Firebase: fornisce brevi panoramiche di diversi concetti importanti sui progetti Firebase, incluso il loro rapporto con Google Cloud e la gerarchia di base di un progetto, nonché le sue app e risorse.
- Best practice generali per la configurazione dei progetti Firebase: fornisce best practice generali di alto livello per la configurazione dei progetti Firebase e la registrazione delle app a un progetto, in modo da avere un flusso di lavoro di sviluppo chiaro che utilizzi ambienti distinti.
Tieni presente che per tutti i progetti Firebase, Firebase aggiunge automaticamente un'etichetta di
firebase:enabled
nella
pagina Etichette per il progetto nella
Console Google Cloud. Scopri di più su questa etichetta nelle nostre
Domande frequenti.
Che cos'è un'organizzazione Google Cloud?
Un'organizzazione Google Cloud è un contenitore per i progetti Google Cloud (inclusi i progetti Firebase). Questa gerarchia consente una migliore organizzazione, gestione dell'accesso e controllo dei progetti Google Cloud e Firebase. Per ulteriori informazioni, consulta Creare e gestire le organizzazioni.
Come faccio ad aggiungere Firebase a un progetto Google Cloud esistente?
Potresti avere progetti Google Cloud esistenti gestiti tramite la console Google Cloud o la console API di Google.
Puoi aggiungere Firebase a questi progetti Google Cloud esistenti utilizzando una delle seguenti opzioni:
- Utilizzo della console Firebase.
- Utilizzo di un'opzione programmatica:
- Chiama l'endpoint dell'API REST Firebase Management
projects.addFirebase
. - Esegui il comando Firebase CLI
firebase projects:addfirebase
. - Utilizza Terraform.
- Chiama l'endpoint dell'API REST Firebase Management
Scopri di più su come aggiungere Firebase a un progetto Google Cloud.
Come funziona l'integrazione di Firebase con Google Cloud?
Firebase è profondamente integrato con Google Cloud. I progetti sono condivisi tra Firebase e Google Cloud, pertanto possono essere attivati i servizi Firebase e Google Cloud. Puoi accedere allo stesso progetto dalla console Firebase o dalla console Google Cloud. Nello specifico:
- Alcuni prodotti Firebase sono supportati direttamente da Google Cloud, ad esempio Cloud Storage for Firebase. L'elenco dei prodotti supportati da Google Cloud continuerà a crescere nel tempo.
- Molte delle tue impostazioni, inclusi i collaboratori e i dati di fatturazione, sono condivise da Firebase e Google Cloud. L'utilizzo sia di Firebase sia di Google Cloud viene visualizzato nella stessa fattura.
Inoltre, quando esegui l'upgrade al piano Blaze, puoi utilizzare qualsiasi API e Infrastructure-as-a-Service di Google Cloud di livello mondiale direttamente nel tuo progetto Firebase, a prezzi standard di Google Cloud. Puoi anche esportare i dati da Google Cloud direttamente in BigQuery per l'analisi. Per saperne di più, consulta Collegare BigQuery a Firebase.
L'utilizzo di Google Cloud con Firebase offre molti vantaggi in termini di miglioramento della sicurezza, riduzione della latenza e risparmio di tempo rispetto ad altri servizi cloud non in co-locazione. Per ulteriori dettagli, visita il sito di Google Cloud.
Perché il mio progetto Google Cloud ha l'etichetta
firebase:enabled
?
Nella
pagina Etichette
del tuo progetto nella console Google Cloud, potresti vedere un'etichetta di
firebase:enabled
(in particolare, un Key
di
firebase
con un Value
di enabled
).
Firebase ha aggiunto automaticamente questa etichetta perché il tuo progetto è un progetto Firebase, il che significa che sono state attivate configurazioni e servizi specifici di Firebase. Scopri di più sulla relazione tra i progetti Firebase e Google Cloud.
Ti consigliamo vivamente di non modificare o eliminare questa
etichetta. Questa etichetta viene utilizzata da Firebase e Google Cloud per elencare i tuoi progetti Firebase (ad esempio, utilizzando l'endpoint projects.list
dell'API REST o nei menu della console Firebase).
Tieni presente che l'aggiunta manuale di questa etichetta all'elenco delle etichette del progetto NON attiva configurazioni e servizi specifici di Firebase per il progetto Google Cloud. Per farlo, devi aggiungere Firebase utilizzando la console Firebase (o, per casi d'uso avanzati, utilizzando la API REST Firebase Management o l'Firebase CLI).
Perché il mio progetto Firebase non viene visualizzato nell'elenco dei progetti Firebase?
Queste domande frequenti sono applicabili se non vedi il tuo progetto Firebase nelle seguenti posizioni:
- In un elenco di progetti che stai visualizzando nella console Firebase
- Nella risposta alla chiamata dell'endpoint
projects.list
dell'API REST - Nella risposta all'esecuzione del comando Firebase CLI
firebase projects:list
Prova a seguire questi passaggi per la risoluzione dei problemi:
- Innanzitutto, prova ad accedere al progetto visitando direttamente l'URL. Utilizza il seguente formato:
https://console.firebase.google.com/project/PROJECT_ID/overview
- Se non riesci ad accedere al progetto o ricevi errori di autorizzazione, controlla quanto segue:
- Assicurati di aver eseguito l'accesso a Firebase utilizzando lo stesso Account Google con accesso al progetto. Puoi accedere e uscire dalla console Firebase tramite l'avatar del tuo account nell'angolo in alto a destra della console.
- Verifica di poter visualizzare il progetto nella console Google Cloud.
- Assicurati che il progetto abbia l'etichetta
firebase:enabled
nella pagina Etichette per il progetto nella console Google Cloud. Firebase e Google Cloud utilizzano questa etichetta per elencare i tuoi progetti Firebase. Se non vedi questa etichetta, ma l'API Firebase Management è abilitata per il tuo progetto, aggiungila manualmente (in particolare, unKey
difirebase
con unValue
dienabled
). - Assicurati di avere uno dei ruoli IAM di base (Proprietario, Editor, Visualizzatore) o un ruolo con autorizzazioni relative a Firebase, ad esempio un ruolo predefinito di Firebase. Puoi visualizzare i tuoi ruoli nella pagina IAM della console Google Cloud.
- Se il tuo progetto appartiene a un'organizzazione Google Cloud, potresti richiedere autorizzazioni aggiuntive per visualizzarlo nella console Firebase. Contatta la persona che gestisce la tua Google Cloud organizzazione per farti assegnare il ruolo appropriato per visualizzare il progetto, ad esempio il ruolo Browser.
Se nessuno dei passaggi per la risoluzione dei problemi riportati sopra ti consente di visualizzare il tuo progetto in un elenco di progetti Firebase, contatta l'assistenza Firebase.
Quanti progetti posso avere per account?
- Piano tariffario Spark: la quota del progetto è limitata a un numero ridotto di progetti (in genere 5-10).
- Piano tariffario Blaze: la quota di progetto per account Cloud Billing aumenta notevolmente a condizione che l'account Cloud Billing sia in regola.
Il limite della quota del progetto raramente rappresenta 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 viene conteggiata ai fini della quota fino a quando non viene eliminata completamente.
Quante app Firebase posso avere in un progetto Firebase?
Un progetto Firebase è un contenitore per le app Firebase su Apple, Android e web. Firebase limita a 30 il numero totale di app Firebase all'interno di un progetto Firebase.
Oltre questo numero, le prestazioni iniziano a peggiorare (in particolare per Google Analytics) e, con un numero maggiore di app, alcune funzionalità del prodotto smettono di funzionare. Inoltre, se utilizzi Accedi con Google come provider di autenticazione, viene creato un ID client OAuth 2.0 sottostante per ogni app del progetto. È possibile creare un massimo di circa 30 ID client all'interno di un singolo progetto.
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. Ad esempio, se sviluppi un'applicazione white label, ogni app con un'etichetta indipendente deve avere un proprio progetto Firebase, ma le versioni per Apple e Android di quell'etichetta possono trovarsi nello stesso progetto. Leggi indicazioni più dettagliate nelle nostre best practice generali per la configurazione dei progetti Firebase.
Nei rari casi in cui il tuo progetto richieda più di 30 app, puoi richiedere un aumento del limite di app. Per effettuare questa richiesta, il progetto deve essere nel piano tariffario Blaze. Visita la console Google Cloud per inviare la tua richiesta e farla valutare. Scopri di più sulla gestione delle quote nella documentazione di Google Cloud.
Cosa succede se etichetto il mio progetto come ambiente di "produzione"?
Nella console Firebase, puoi taggare i progetti Firebase con il relativo tipo di ambiente, come Produzione o Senza specificare (non di produzione).
Il tagging del progetto come tipo di ambiente non influisce sul funzionamento o sulle funzionalità del progetto Firebase. Tuttavia, il tagging può aiutare te e il tuo team a gestire i vari progetti Firebase per il ciclo di vita dell'app.
Se tagghi il progetto come ambiente di produzione, aggiungi un tag Prod di colore brillante al progetto nella console Firebase per ricordarti che eventuali modifiche potrebbero influire sulle app di produzione associate. In futuro, potremmo aggiungere altre funzionalità e misure di salvaguardia per i progetti Firebase contrassegnati come ambienti di produzione.
Per modificare il tipo di ambiente del progetto Firebase, vai a settings Impostazioni progetto > Generali e poi nella scheda Il tuo progetto in Ambiente, fai clic su edit per modificare il tipo di ambiente.
Dove posso trovare l'ID app per la mia app Firebase?
Nella console Firebase, vai a settings Impostazioni del progetto. Scorri verso il basso fino alla scheda Le tue app, poi fai clic sull'app Firebase che ti interessa per visualizzarne le informazioni, incluso l'ID app.
Ecco alcuni valori di esempio dell'ID app:
-
App Firebase per iOS:
1:1234567890:ios:321abc456def7890
-
App Firebase per Android:
1:1234567890:android:321abc456def7890
-
App web Firebase:
1:1234567890:web:321abc456def7890
Quali sono i prerequisiti per collegare Google Play / AdMob / Google Ads / BigQuery al mio progetto o alla mia app Firebase?
- Per collegare il tuo account Google Play, devi disporre di quanto segue:
- Uno dei seguenti ruoli Firebase: Proprietario o Amministratore Firebase
e - Uno dei seguenti livelli di accesso Google Play: Proprietario o Amministratore dell'account
- Uno dei seguenti ruoli Firebase: Proprietario o Amministratore Firebase
- Per collegare l'app AdMob, devi essere sia un proprietario del progetto Firebase sia un amministratore di AdMob.
- Per collegare il tuo account AdWords, devi essere sia un proprietario del progetto Firebase sia un amministratore di AdWords.
- Per collegare il tuo progetto BigQuery, devi essere il proprietario del progetto Firebase.
Quali notifiche relative all'open source devo includere nella mia app?
Sulle piattaforme Apple, il pod Firebase contiene un file NOTICES che include le voci pertinenti. L'SDK Firebase per Android contiene un
helper Activity
per mostrare le informazioni sulla licenza.
Autorizzazioni e accesso ai progetti Firebase
Come faccio ad assegnare a un membro del progetto un ruolo, ad esempio il ruolo Proprietario?
Per gestire i ruoli assegnati a ciascun membro del progetto, devi essere un proprietario del progetto Firebase o avere un ruolo con l'autorizzazione resourcemanager.projects.setIamPolicy
.
Ecco dove puoi assegnare e gestire i ruoli:
- La console Firebase offre un modo semplificato per assegnare i ruoli ai membri del progetto nella scheda Utenti e autorizzazioni di settings > Impostazioni progetto. Nella console Firebase, puoi assegnare uno dei ruoli di base (Proprietario, Editor, Visualizzatore), uno dei ruoli Amministratore/Visualizzatore Firebase o uno dei ruoli predefiniti per categoria di prodotto Firebase.
- La console Google Cloud offre un ampio insieme di strumenti per assegnare i ruoli ai membri del progetto nella pagina IAM. Nella console Cloud puoi anche creare
e gestire
ruoli personalizzati, nonché concedere agli account di servizio
l'accesso al tuo progetto.
Tieni presente che nella console Google Cloud, i membri del progetto sono chiamati principali.
Se il proprietario del progetto non può più svolgere le attività di un proprietario (ad esempio, la persona ha lasciato la tua azienda) e il progetto non è gestito tramite un'organizzazione Google Cloud (vedi paragrafo successivo), puoi contattare l'assistenza Firebase per chiedere come richiedere l'accesso al progetto Firebase.
Tieni presente che se un progetto Firebase fa parte di un'organizzazione Google Cloud, potrebbe non avere un proprietario. Se non riesci a trovare un proprietario per il tuo progetto Firebase, contatta la persona che gestisce la tua organizzazione Google Cloud per assegnare un proprietario al progetto.
Come faccio a trovare il proprietario di un progetto Firebase?
Puoi visualizzare i membri del progetto e i relativi ruoli nei seguenti punti:
- Se hai accesso al progetto nella console Firebase, puoi visualizzare l'elenco dei membri del progetto, inclusi i proprietari, nella pagina Utenti e autorizzazioni della console Firebase.
- Se non hai accesso al progetto nella console Firebase, controlla se hai accesso al progetto nella console Google Cloud. Puoi visualizzare l'elenco dei membri del progetto, inclusi i proprietari, nella pagina IAM della console Google Cloud.
Se il proprietario del progetto non può più svolgere le attività di un proprietario (ad esempio, la persona ha lasciato la tua azienda) e il progetto non è gestito tramite un'organizzazione Google Cloud (vedi il paragrafo successivo), puoi contattare l'assistenza Firebase per farti assegnare un proprietario temporaneo.
Tieni presente che se un progetto Firebase fa parte di un'Google Cloudorganizzazione, potrebbe non avere un proprietario. La persona che gestisce la tua Google Cloud può invece eseguire molte attività che sono disponibili per un proprietario. Tuttavia, per eseguire diverse attività specifiche del proprietario (ad esempio l'assegnazione dei ruoli o la gestione delle proprietà Google Analytics), l'amministratore potrebbe dover assegnare a se stesso il ruolo di proprietario effettivo per poterle svolgere. Se non riesci a trovare un proprietario per il tuo progetto Firebase, contatta la persona che gestisce la tua organizzazione Google Cloud per assegnare un proprietario al progetto.
Perché o quando devo assegnare a un membro del progetto il ruolo Proprietario?
Per garantire una gestione corretta di un progetto Firebase, è necessario un proprietario. Il proprietario di un progetto è la persona che può eseguire diverse azioni amministrative importanti (ad esempio l'assegnazione dei ruoli e la gestione delle proprietà Google Analytics) e l'Assistenza Firebase può soddisfare solo le richieste amministrative dei proprietari di progetti dimostrati.
Dopo aver configurato i proprietari di un progetto Firebase, è importante mantenere aggiornate queste assegnazioni.
Tieni presente che se un progetto Firebase fa parte di un'organizzazione Google Cloud, la persona che gestisce l'organizzazione Google Cloud può eseguire molte attività che sono disponibili per un proprietario. Tuttavia, per diverse attività specifiche del proprietario (ad esempio l'assegnazione di ruoli o la gestione delle proprietà Google Analytics), l'amministratore potrebbe dover assegnare a se stesso il ruolo Proprietario effettivo per poterle svolgere.
Non credo di avere un progetto Firebase, ma ho ricevuto un'email al riguardo. Come faccio ad accedere a questo progetto?
L'email che hai ricevuto dovrebbe contenere un link per aprire il tuo progetto Firebase. Se fai clic sul link nell'email, il progetto dovrebbe aprirsi nella console Firebase.
Se non riesci ad aprire il progetto nel link, assicurati di aver eseguito l'accesso a Firebase utilizzando lo stesso Account Google che ha ricevuto l'email relativa al progetto. Puoi accedere e uscire dalla console Firebase tramite l'avatar del tuo account nell'angolo in alto a destra della console.
Tieni presente che se sei un amministratore di un'organizzazione Google Cloud, potresti ricevere notifiche relative alle modifiche ai progetti Firebase all'interno della tua organizzazione. Tuttavia, potresti non disporre delle autorizzazioni sufficienti per aprire il progetto Firebase. In questi casi, la soluzione più semplice è assegnare a te stesso il ruolo Proprietario effettivo per aprire il progetto ed eseguire le azioni richieste. Scopri di più su perché e quando assegnare il ruolo di proprietario.
Piattaforme e framework
Visita le pagine relative alla risoluzione dei problemi e alle domande frequenti specifiche della piattaforma per suggerimenti utili e risposte a altre domande frequenti.
Console Firebase
Quali sono i browser supportati per accedere alla console Firebase?
Puoi accedere alla console Firebase dalle versioni recenti dei browser desktop più diffusi, come Chrome, Firefox, Safari ed Edge. Al momento i browser mobile non sono completamente supportati.
Riesco a caricare la console Firebase, ma perché non riesco a trovare o accedere al mio progetto Firebase?
Queste domande frequenti sono applicabili se riscontri uno dei seguenti problemi:
- La console Firebase restituisce una pagina di errore che indica che il progetto potrebbe non esistere o che non hai accesso al progetto.
- La console Firebase non mostra il progetto anche se inserisci il relativo ID o nome nel campo di ricerca della console.
Prova a seguire questi passaggi per la risoluzione dei problemi:
- Innanzitutto, prova ad accedere al progetto visitando direttamente l'URL. Utilizza il seguente formato:
https://console.firebase.google.com/project/PROJECT-ID/overview
- Se non riesci ancora ad accedere al progetto o ricevi errori di autorizzazione,
controlla quanto segue:
- Assicurati di aver eseguito l'accesso a Firebase utilizzando lo stesso Account Google che ha accesso al progetto. Puoi accedere e uscire dalla console Firebase tramite l'avatar del tuo account nell'angolo in alto a destra della console.
- Assicurati che l'API Firebase Management sia abilitata per il progetto.
- Assicurati di avere uno dei ruoli IAM di base (Proprietario, Editor, Visualizzatore) o un ruolo con autorizzazioni relative a Firebase, ad es. un ruolo predefinito di Firebase. Puoi visualizzare i tuoi ruoli nella pagina IAM della console Google Cloud.
- Se il tuo progetto appartiene a un'organizzazione Google Cloud, potresti richiedere altre autorizzazioni per visualizzarlo nella console Firebase. Contatta la persona che gestisce la tua Google Cloud organizzazione per farti assegnare il ruolo appropriato per visualizzare il progetto, ad esempio il ruolo Browser.
Se nessuno dei passaggi per la risoluzione dei problemi riportati sopra ti consente di trovare o accedere al tuo progetto, contatta l'assistenza Firebase.
Perché la console Firebase non si carica?
Queste domande frequenti sono applicabili se riscontri uno dei seguenti problemi:
- Il caricamento di una pagina nella console Firebase non termina mai.
- I dati all'interno di una pagina non vengono caricati come previsto.
- Ricevi messaggi di errore del browser durante il caricamento della console Firebase.
Prova a seguire questi passaggi per la risoluzione dei problemi:
- Controlla la riga Console della dashboard dello stato di Firebase per verificare la presenza di eventuali interruzioni del servizio.
- Assicurati di utilizzare un browser supportato.
- Prova a caricare la console Firebase in una finestra di navigazione in incognito o privata.
- Disattiva tutte le estensioni del browser.
- Verifica che la connessione di rete non sia bloccata da un blocco degli annunci, da un antivirus, da un proxy, da un firewall o da altro software.
- Prova a caricare la console Firebase utilizzando una rete o un dispositivo diversi.
- Se utilizzi Chrome, controlla la console degli Strumenti per sviluppatori per verificare la presenza di eventuali errori.
Se nessuno dei passaggi per la risoluzione dei problemi sopra indicati risolve il problema, contatta l'assistenza Firebase.
Come viene determinata la lingua della mia console Firebase?
L'impostazione della lingua per la console Firebase si basa sulla lingua selezionata nelle impostazioni dell'Account Google.
Per cambiare la preferenza della lingua, consulta Cambiare lingua.
La console Firebase supporta le seguenti lingue:
- Inglese
- Portoghese brasiliano
- Francese
- Tedesco
- Indonesiano
- Giapponese
- Coreano
- Russo
- Cinese semplificato
- Spagnolo
- Cinese tradizionale
Quali ruoli e autorizzazioni supporta la console Firebase?
La console Firebase e la console Google Cloud utilizzano gli stessi ruoli e le stesse autorizzazioni di base. Scopri di più su ruoli e autorizzazioni nella documentazione di Firebase IAM.
Firebase supporta i ruoli fondamentali (di base) di Proprietario, Editor e Visualizzatore:
- Un proprietario del progetto può aggiungere altri membri al progetto, configurare integrazioni (collegamento del progetto a servizi come BigQuery o Slack) e ha accesso completo in modifica al progetto.
- Un editor del progetto ha accesso completo in modifica al progetto.
- Un visualizzatore di un progetto ha accesso di sola lettura al progetto. Tieni presente che al momento la console Firebase non nasconde/disattiva i controlli dell'interfaccia utente di modifica per i visualizzatori del progetto, ma queste operazioni non andranno a buon fine per i membri del progetto a cui è stato assegnato il ruolo Visualizzatore.
Firebase supporta anche:
- Ruoli predefiniti di Firebase : ruoli specifici di Firebase selezionati che consentono un controllo degli accessi più granulare rispetto ai ruoli di base Proprietario, Editor e Visualizzatore.
- Ruoli personalizzati : ruoli IAM completamente personalizzati che crei per personalizzare un insieme di autorizzazioni che soddisfano i requisiti specifici della tua organizzazione.
Firebase Local Emulator Suite
Perché i log di Emulator Suite mostrano un errore che inizia con "Non è consigliabile avere più projectId in modalità progetto singolo"?
Questo messaggio indica che Emulator Suite ha rilevato che potrebbe essere in esecuzione un emulatore di un determinato prodotto che utilizza ID progetto diversi. Ciò potrebbe indicare un'errata configurazione e può causare problemi quando gli emulatori tentano di comunicare tra loro e quando provi a interagire con gli emulatori dal tuo codice. Se gli ID progetto non corrispondono, spesso sembra che manchino dati, poiché i dati archiviati negli emulatori sono associati a projectID e l'interoperabilità dipende dalla corrispondenza degli ID progetto.
Questo è stato un motivo comune di confusione tra gli sviluppatori, pertanto per impostazione predefinita Local Emulator Suite ora consentirà l'esecuzione solo con un singolo ID progetto, a meno che non specifichi diversamente nel file di configurazione firebase.json
. Se un emulatore rileva più di un ID progetto, registra un avviso e potrebbe generare un errore fatale.
Controlla le dichiarazioni dell'ID progetto per verificare la presenza di mancate corrispondenze in:
-
Il progetto predefinito impostato nella riga di comando. Per impostazione predefinita,
all'avvio l'ID progetto verrà preso dal progetto selezionato con
firebase init
ofirebase use
. Per visualizzare l'elenco dei progetti (e vedere quale è selezionato), utilizzafirebase projects:list
. -
Test di unità. L'ID progetto viene spesso specificato nelle chiamate ai metodi della libreria di test di unità delle regole
initializeTestEnvironment
oinitializeTestApp
. L'altro codice di test potrebbe essere inizializzato coninitializeApp(config)
. -
Il flag
--project
della riga di comando. Se passi il flag Firebase--project
della CLI, il progetto predefinito viene ignorato. Devi assicurarti che il valore del flag corrisponda all'ID progetto nei test di unità e nell'inizializzazione dell'app.
Luoghi da controllare specifici della piattaforma:
Web | La proprietà projectId nell'oggetto firebaseConfig
JavaScript, utilizzata in initializeApp .
|
Android | La proprietà project_id all'interno del
file di configurazione google-services.json .
|
Piattaforme Apple | La proprietà PROJECT_ID nel
file di configurazione GoogleService-Info.plist .
|
Per disattivare la modalità di un singolo progetto, aggiorna firebase.json
con la chiave singleProjectMode
:
{ "firestore": { ... }, "functions": { ... }, "hosting": { ... }, "emulators": { "singleProjectMode": false, "auth": { "port": 9099 }, "functions": { "port": 5001 }, ... } }
Prezzi
Per le domande frequenti sui prezzi specifiche di un prodotto, consulta la sezione del prodotto in questa pagina o la documentazione del prodotto dedicata.
Quali prodotti sono a pagamento? Quali sono senza costi?
I prodotti di infrastruttura a pagamento di Firebase sono Realtime Database, Cloud Storage for Firebase, Cloud Functions, Hosting, Test Lab e l'autenticazione telefonica. Offriamo un livello senza costi per tutte queste funzionalità.
Firebase offre anche molti prodotti senza costi: Analytics, Cloud Messaging, il Composizione notifiche, Remote Config, App Indexing, Dynamic Links e Crash Reporting. L'utilizzo di questi prodotti è soggetto solo alle norme di controllo del traffico del prodotto (ad es. quote, accesso equo e altre protezioni del servizio) in tutti i piani, incluso il nostro piano Spark senza costi. Inoltre, tutte le funzionalità di Authentication oltre all'autenticazione dello smartphone sono senza costi.
Firebase offre crediti di prova senza costi per i prodotti a pagamento?
I servizi Firebase a pagamento possono essere utilizzati nell'ambito della Google Cloud prova senza costi. I nuovi utenti di Google Cloud e Firebase possono usufruire di un periodo di prova di 90 giorni che include 300 $di crediti Cloud Billing senza costi per scoprire e valutare i prodotti e i servizi Google Cloud e Firebase.
Durante il periodo di Google Cloud prova senza costi, ti verrà fornito un account Cloud Billing provato senza costi. Qualsiasi progetto Firebase che utilizza questo account di fatturazione sarà associato al piano tariffario Blaze durante il periodo di prova senza costi.
Non preoccuparti, la configurazione di questo account di prova senza costi Cloud Billing non ci consente di effettuare addebiti a tuo carico. Non ti viene addebitato alcun costo a meno che non abiliti la fatturazione in maniera esplicita, eseguendo l'upgrade del tuo account di prova senza costi Cloud Billing a un account a pagamento. Puoi eseguire l'upgrade a un account a pagamento in qualsiasi momento durante il periodo di prova. Dopo aver eseguito l'upgrade, puoi ancora utilizzare i crediti residui (entro il periodo di 90 giorni).
Al termine della prova senza costi, dovrai eseguire il downgrade del progetto al piano tariffario Spark o configurare il piano tariffario Blaze nella console Firebase per continuare a utilizzare il progetto Firebase.
Scopri di più sulla prova senza costi di Google Cloud.
Come faccio a sapere qual è il piano tariffario più adatto a me?
Piano tariffario Spark
Il nostro piano Spark è un ottimo punto di partenza per sviluppare la tua app senza costi. Avrai a disposizione tutte le funzionalità di Firebase senza costi (Analytics, il Composizione notifiche,Crashlytics e così via) e una quantità generosa delle nostre funzionalità di infrastruttura a pagamento. Tuttavia, se superi le risorse del piano Spark in un mese di calendario, la tua app verrà disattivata per il resto del mese. Inoltre, le funzionalità di Google Cloud non sono disponibili se utilizzi il piano Spark.
Piano tariffario di Blaze
Il nostro piano Blaze è progettato per le app di produzione. Il piano Blaze ti consente inoltre di estendere la tua app con le funzionalità Google Cloud pagate. Paghi solo per le risorse che utilizzi e puoi scalare in base alla domanda. Ci impegniamo a rendere i prezzi dei nostri piani Blaze competitivi rispetto ai principali provider cloud del settore.
Posso eseguire l'upgrade, il downgrade o l'annullamento in qualsiasi momento?
Sì, puoi eseguire l'upgrade, il downgrade o l'annullamento in qualsiasi momento. Tieni presente che non forniamo rimborsi proporzionali per downgrade o annullamenti. Ciò significa che se esegui il downgrade o l'annullamento prima della fine del periodo di fatturazione, dovrai comunque pagare per il resto del mese.
Qual è la differenza tra l'utilizzo senza costi nel piano Blaze e l'utilizzo senza costi nel piano Spark?
L'utilizzo senza costi aggiuntivi del piano Blaze viene calcolato su base giornaliera. I limiti di utilizzo differiscono anche dal piano Spark per Cloud Functions, l'autenticazione telefonica e Test Lab.
Per Cloud Functions, l'utilizzo senza costi del piano Blaze viene calcolato a livello di account Cloud Functions, non a livello di progetto, e presenta i seguenti limiti:Cloud Billing
- 2 milioni di chiamate/mese
- 400.000 GB/secondo al mese
- 200.000 secondi CPU/mese
- 5 GB di traffico di rete in uscita al mese
Per l'autenticazione telefonica, l'utilizzo senza costi aggiuntivi del piano Blaze viene calcolato su base mensile.
Per Test Lab, l'utilizzo senza costi aggiuntivi del piano Blaze ha i seguenti limiti:
- 30 minuti/giorno di dispositivo fisico
- 60 minuti di dispositivo virtuale al giorno
La quota di utilizzo senza costi viene reimpostata quando passo da un piano Spark a un piano Blaze?
L'utilizzo senza costi del piano Spark è incluso nel piano Blaze. L'utilizzo senza costi non viene reimpostato quando passi a un piano Blaze.
Cosa succede al mio progetto Firebase se aggiungo o rimuovo account di fatturazione per quel progetto nella console Google Cloud?
Se un account Cloud Billing viene aggiunto a un progetto nella console Google Cloud, verrà eseguito automaticamente l'upgrade allo stesso progetto al piano Firebase Blaze se il progetto è attualmente in uso con il piano Spark.
Al contrario, se un account Cloud Billing attivo esistente viene rimosso da un progetto nella console Google Cloud, verrà eseguito il downgrade del progetto al piano Firebase Spark.
Come faccio a monitorare l'utilizzo e la fatturazione?
Puoi monitorare l'utilizzo delle risorse del progetto nella console Firebase in una delle seguenti dashboard:
- Dashboard Utilizzo e fatturazione complessiva a livello di progetto
- Authentication Dashboard Utilizzo (specifica per le istanze di autenticazione telefonica)
- Cloud Firestore Dashboard di utilizzo
- Cloud Functions Dashboard di utilizzo
- Cloud Storage Dashboard di utilizzo
- Hosting Dashboard di utilizzo
- Realtime Database Dashboard di utilizzo
Posso limitare l'utilizzo con il piano Blaze?
No, al momento non puoi limitare l'utilizzo del piano Blaze. Stiamo valutando le opzioni per supportare i limiti di utilizzo del piano Blaze.
Gli utenti di Blaze possono definire un budget per il proprio progetto o account e ricevere avvisi quando la spesa si avvicina a questi limiti. Scopri come impostare gli avvisi sul budget.
Che tipo di assistenza riceverò?
Tutte le app Firebase, incluse quelle che utilizzano i piani senza costi, vengono fornite con assistenza via email da parte del personale di Firebase durante l'orario di lavoro della costa pacifica degli Stati Uniti. Tutti gli account hanno accesso ad assistenza illimitata per problemi relativi alla fatturazione o all'account, domande tecniche (risoluzione dei problemi) e segnalazioni di incidenti.
Offri sconti per enti non profit, open source o per scopi didattici?
Il nostro piano Spark può essere utilizzato da qualsiasi tipo di privato o di organizzazione, tra cui non profit, scuole e progetti open-source. Poiché questi piani includono già quote generose, non offriamo sconti o piani speciali per progetti open source, non profit o didattici.
Offri contratti aziendali, prezzi, assistenza o hosting di infrastrutture dedicate?
Il nostro piano Blaze è adatto a imprese di tutte le dimensioni e il nostro accordo sul livello del servizio raggiunge o supera lo standard di settore per l'infrastruttura cloud. Tuttavia, al momento non offriamo contratti, prezzi o assistenza per le aziende, né offriamo l'hosting di infrastrutture dedicate (ovvero installazioni on-premise) per servizi come il nostro Realtime Database. Stiamo lavorando duramente per aggiungere alcune di queste funzionalità.
Offri prezzi ad hoc? Voglio utilizzare il pagamento a consumo solo per una o due funzionalità.
Nel piano Blaze offriamo prezzi ad hoc, in cui paghi solo per le funzionalità che utilizzi.
Come funzionano i piani Firebase a pagamento con Ads? Esistono crediti pubblicitari senza costi con i piani a pagamento?
I piani tariffari di Firebase sono separati da Ads, pertanto non sono disponibili crediti pubblicitari senza costi. In qualità di sviluppatore Firebase, puoi "collegare" il tuo account Ads a Firebase per supportare il monitoraggio delle conversioni.
Tutte le campagne pubblicitarie vengono gestite direttamente in Ads e la fatturazione di Ads viene gestita dalla console Ads.
Che cosa è successo al piano tariffario di Flame?
A gennaio 2020, il piano tariffario Flame (quota aggiuntiva di 25 $/mese) è stato ritirato come opzione per i nuovi utenti. Agli utenti del piano esistente è stato concesso un periodo di tolleranza per eseguire la migrazione dei progetti dal piano Flame.
A febbraio 2022 è stato eseguito il downgrade al piano tariffario Spark per i progetti rimanenti che utilizzavano il piano tariffario Flame.
Di conseguenza,
- I progetti con piano Spark e Blaze esistenti e tutti i nuovi progetti non possono più passare al piano Flame o registrarsi al piano Flame.
- Se hai spostato un progetto del piano Flame esistente in un altro piano tariffario, il progetto non può tornare al piano Flame.
- Per i progetti di cui è stato eseguito il downgrade al piano Spark è possibile eseguire l'upgrade al piano Blaze per riprendere i servizi a pagamento aggiuntivi.
- I riferimenti al piano Flame sono stati rimossi dalla documentazione.
Hai altre domande sul ritiro del piano Flame? Leggi alcune delle domande frequenti aggiuntive riportate di seguito.
Vuoi scoprire gli altri piani tariffari offerti da Firebase? Visita la nostra pagina dei prezzi di Firebase. Se vuoi iniziare a trasferire i progetti esistenti a un altro piano tariffario, puoi farlo nella console Firebase del tuo progetto.
Domande frequenti aggiuntive sul ritiro del piano Flame
Ho un progetto, un processo o un modello di business che si basa su un costo Firebase fisso. Che cosa devo fare?
Abbonati al piano tariffario Blaze e assicurati di impostare gli avvisi relativi al budget.
Posso avere accesso speciale per creare nuovi progetti di piani Flame?
No, Firebase non offre accesso speciale per i progetti che vogliono passare al piano Flame o registrarsi al piano.
Ho modificato il mio progetto del piano Flame in un altro piano tariffario. Come faccio a ripristinarla?
Non è più possibile passare al piano Flame. Per accedere ai servizi forniti dal piano Flame, assicurati di utilizzare il piano tariffario Blaze e valuta la possibilità di configurare gli avvisi sul budget per il tuo progetto.
Nel mio progetto è stato attivato automaticamente un piano tariffario diverso nell'ambito del ritiro del piano Flame. Che cosa devo fare?
Se il tuo progetto richiede una quota aggiuntiva rispetto a quella fornita con il piano Spark, dovrai eseguire l'upgrade al piano tariffario Blaze.
Perché il piano Flame verrà ritirato?
Nel corso degli anni, abbiamo notato un calo nell'utilizzo del piano Flame e la maggior parte dei progetti che lo utilizzano non ne sfrutta tutto il valore. La gestione di questo piano tariffario non è generalmente conveniente e riteniamo di poter offrire un servizio migliore a tutti se le risorse venissero destinate ad altre iniziative Firebase.
Privacy
Dove posso trovare informazioni sulla privacy e sulla sicurezza in Firebase?
Consulta la pagina Privacy e sicurezza in Firebase.
Gli SDK Firebase registrano informazioni sull'utilizzo/diagnostica al di fuori di Analytics?
Sì. Al momento è disponibile solo su iOS, ma potrebbe cambiare in futuro. L'SDK Firebase per le piattaforme Apple include il framework FirebaseCoreDiagnostics
per impostazione predefinita. Questo framework viene utilizzato da Firebase per raccogliere informazioni sull'utilizzo e sulla diagnostica dell'SDK al fine di stabilire le priorità dei miglioramenti futuri dei prodotti. FirebaseCoreDiagnostics
è facoltativo, quindi se non vuoi inviare i log di diagnostica di Firebase, puoi scollegare la libreria dalla tua applicazione. Puoi sfogliare il codice sorgente completo, inclusi i valori registrati, su GitHub.
A/B Testing
A/B Testing: quanti esperimenti posso creare ed eseguire?
Puoi avere fino a 300 esperimenti per progetto, che possono essere costituiti da un massimo di 24 esperimenti in esecuzione, mentre il resto è in bozza o completato.
A/B Testing: perché non riesco a visualizzare i miei esperimenti dopo aver scollegato e ricollegato il mio progetto a Google Analytics?
Se colleghi una proprietà Google Analytics diversa, perderai l'accesso agli esperimenti creati in precedenza. Per riottenere l'accesso a un esperimento precedente, ricollega il progetto alla proprietà Google Analytics collegata al momento della creazione dell'esperimento.
A/B Testing: perché ricevo il messaggio "Progetto non collegato a Google Analytics" quando creo un esperimento di configurazione remota?
Se hai già collegato Firebase e Google Analytics, ma visualizzi ancora un messaggio che indica che Google Analytics non è collegato, assicurati che esista uno stream di Analytics per tutte le app nel tuo progetto. Al momento, per utilizzare A/B Testing, tutte le app di un progetto devono essere collegate a uno stream di Google Analytics.
Puoi trovare l'elenco di tutti gli stream attivi nella pagina Dettagli sull'integrazione di Google Analytics della Console Firebase, a cui puoi accedere da settingsImpostazioni progetto chevron_right Integrazioni chevron_right Google Analytics chevron_right Gestisci.
La creazione di uno stream di Google Analytics per le app che non ne hanno uno dovrebbe risolvere il problema. Esistono diversi modi per creare stream per le app mancanti:
-
Se a una o due app manca uno stream di Google Analytics associato, puoi scegliere uno dei seguenti metodi per aggiungerne uno:
- Elimina e aggiungi di nuovo qualsiasi app senza uno stream attivo nella Console Firebase.
- Nella console di Google Analytics, seleziona Amministrazione, fai clic su Stream di dati, poi su Aggiungi stream, aggiungi i dettagli dell'app mancante e fai clic su Registra app.
-
Se mancano più di alcuni stream di app, scollegare e ricollegare la proprietà Google Analytics è il modo più rapido ed efficiente per creare gli stream di app mancanti:
- In settings Impostazioni progetto, seleziona Integrazioni.
- Nella scheda Google Analytics, fai clic su Gestisci per accedere alle impostazioni di Firebase e Google Analytics.
- Prendi nota dell'ID proprietà e dell'account Google Analytics collegato di Google Analytics.
- Fai clic su more_vert Altro e seleziona Scollega Analytics da questo progetto.
-
Esamina l'avviso visualizzato (non preoccuparti, ricollegherai la stessa proprietà nel
passaggio successivo), poi fai clic su
Scollega Google Analytics.
Al termine dello scollegamento, verrà visualizzata la pagina Integrations (Integrazioni). - Nella scheda Google Analytics, fai clic su Attiva per avviare la procedura di ricollegamento.
- Seleziona il tuo account Analytics dall'elenco Seleziona account.
-
Accanto a Crea automaticamente una nuova proprietà in questo account, fai clic su
edit Modifica e, dall'elenco
Proprietà Analytics visualizzato, seleziona l'ID proprietà.
Viene visualizzato un elenco di tutte le app del progetto. Le mappature degli stream esistenti per ogni app vengono elencate e per le app che non hanno uno stream ne verrà creato uno. - Fai clic su Attiva Google Analytics per ricollegare la proprietà.
- Fai clic su Fine.
Se continui a ricevere un messaggio di errore durante la creazione di test A/B con Remote Config dopo aver eseguito questi passaggi, contatta l'assistenza di Firebase.
AdMob
AdMob: posso collegare le mie app per Windows a Firebase?
No, le app per Windows non sono attualmente supportate.
AdMob: perché non riesco a collegare la mia app a AdMob dalla console Firebase?
Puoi collegare un'app AdMob a un'app Firebase tramite la console AdMob. Scopri come.
AdMob: quali autorizzazioni o accessi mi occorrono per collegare un'app Firebase a un'app AdMob?
Per eseguire questo collegamento, devi disporre del seguente accesso:
- AdMob: devi essere un amministratore AdMob.
- Firebase: devi disporre dell'autorizzazione
firebase.links.create
, inclusa nel ruolo Proprietario e nel ruolo Amministratore Firebase. - Google Analytics: devi disporre del ruolo di modifica o di gestione degli utenti per la proprietà associata al progetto Firebase. Scopri di più.
AdMob: più utenti dello stesso account AdMob possono collegare app AdMob e app Firebase?
Per gli account AdMob multiutente, l'utente che ha creato il primo collegamento Firebase e che ha accettato i Termini di servizio di Firebase è l'unico che può creare nuovi collegamenti tra le app AdMob e le app Firebase.
AdMob: per utilizzare AdMob, quali SDK devo usare?
Per utilizzare AdMob, utilizza sempre l'SDK Google Mobile Ads come descritto in queste domande frequenti. Se vuoi raccogliere le metriche utente per AdMob, puoi includere facoltativamente l'SDK Firebase per Google Analytics nella tua app.
- Per i progetti per iOS:
Importa l'SDK Google Mobile Ads seguendo le istruzioni riportate nella documentazione di AdMob per iOS. - Per i progetti Android:
Aggiungi la dipendenza per l'SDK Google Mobile Ads al filebuild.gradle
:
implementation 'com.google.android.gms:play-services-ads:23.6.0'
- Per progetti C++ e progetti Unity: segui le istruzioni riportate nella rispettiva documentazione.
Analytics
Analytics: perché Google Analytics è un componente consigliato per l'utilizzo dei prodotti Firebase?
Google Analytics è una soluzione di analisi senza costi e illimitata che funziona con le funzionalità di Firebase per fornire approfondimenti efficaci. Ti consente di visualizzare i log eventi in Crashlytics, l'efficacia delle notifiche in FCM, il rendimento dei link diretti per Dynamic Links e i dati sugli acquisti in-app da Google Play. Supporta il targeting per pubblico avanzato in Remote Config, la personalizzazione di Remote Config e altro ancora.
Google Analytics funge da livello di informazioni nella console Firebase per fornirti informazioni più strategiche su come sviluppare un'app di alta qualità, far crescere la tua base utenti e guadagnare di più.
Per iniziare, leggi la documentazione.
Analytics: come faccio a controllare la modalità di condivisione dei miei dati Analytics con il resto di Firebase?
Per impostazione predefinita, i tuoi dati Google Analytics vengono utilizzati per migliorare altre funzionalità di Firebase e Google. Puoi controllare in qualsiasi momento la modalità di condivisione dei datiGoogle Analytics nelle impostazioni del progetto. Scopri di più sulle impostazioni di condivisione dei dati.
Analytics: come faccio ad aggiornare le impostazioni della mia proprietà Analytics?
Nella pagina Amministrazione della tua proprietà Google Analytics, puoi aggiornare le impostazioni della proprietà, ad esempio:
- Impostazioni di condivisione dei dati
- Impostazioni di conservazione dei dati
- Impostazioni del fuso orario e della valuta
Per aggiornare le impostazioni della proprietà:
- Nella console Firebase, vai a settings > Impostazioni progetto.
- Vai alla scheda Integrazioni e poi, nella scheda Google Analytics, fai clic su Gestisci o Visualizza collegamento.
- Fai clic sul link per il tuo account Google Analytics per aprire le impostazioni dell'account e delle proprietà.
Analytics nella mia app per iOS: posso installare Analytics senza le funzionalità di attribuzione degli annunci e di raccolta dell'IDFA?
Sì. Per ulteriori dettagli, consulta la pagina Configure Data Collection and Usage (Configura la raccolta e l'utilizzo dei dati).
Analytics: cosa è cambiato nella sezione Google Analytics con l'aggiornamento di ottobre 2021?
Puoi trovare un riepilogo di queste modifiche nell'articolo del Centro assistenza Firebase Nuova funzionalità di Google Analytics 4 in Google Analytics per Firebase.
Analytics: perché non vedo i dati di Analytics nella console Firebase dopo aver scollegato Firebase da Google Analytics?
I dati di Analytics si trovano nella proprietà Google Analytics, non nel progetto Firebase. Se elimini o scolleghi la proprietà, i dati di Analytics non saranno accessibili a Firebase e nella console Firebase vedrai una dashboard Analytics vuota. Tieni presente che, poiché i dati si trovano ancora nella proprietà collegata in precedenza, puoi ricollegare la proprietà a Firebase e visualizzare i dati di Analytics nella console Firebase.
Se colleghi un nuovo account Google Analytics (e quindi una nuova proprietà Google Analytics) al tuo progetto Firebase, la dashboard Analytics nella console Firebase sarà vuota. Tuttavia, se la proprietà collegata in precedenza esiste ancora, puoi spostare i dati esistenti dalla vecchia proprietà alla nuova.
Analytics: se la mia proprietà Analytics e i relativi dati sono stati eliminati, c'è un modo per recuperarli?
No. Se la tua proprietà è stata eliminata, non è possibile annullarne l'eliminazione o recuperare i dati Analytics raccolti in precedenza e memorizzati al suo interno.
Se vuoi ricominciare a utilizzare Google Analytics, puoi collegare una nuova proprietà o una proprietà esistente al tuo progetto Firebase. Puoi eseguire questo collegamento nella console Firebase o nell'interfaccia utente di Google Analytics. Scopri di più sul collegamento di una proprietà Google Analytics al tuo progetto Firebase.
Analytics: se la mia proprietà Analytics è stata eliminata, posso collegare una nuova proprietà Google Analytics al mio progetto Firebase e ricominciare a utilizzare Analytics?
Se vuoi ricominciare a utilizzare Google Analytics, puoi collegare una nuova proprietà o una proprietà esistente al tuo progetto Firebase. Puoi eseguire questo collegamento nella console Firebase o nell'interfaccia utente di Google Analytics. Scopri di più sul collegamento di una proprietà Google Analytics al tuo progetto Firebase.
Tieni presente che, poiché tutti i dati Analytics vengono archiviati nella proprietà (non nel progetto Firebase), i dati Analytics raccolti in precedenza non possono essere recuperati.
Analytics: in che modo i prodotti Firebase o i prodotti Google integrati saranno interessati dall'eliminazione della mia proprietà Analytics?
Diversi prodotti Firebase si basano sull'integrazione di Google Analytics. Se la proprietà Analytics e i relativi dati vengono eliminati, si verifica quanto segue se utilizzi i seguenti prodotti:
- Crashlytics: non puoi più visualizzare gli utenti senza arresti anomali, i log dei breadcrumb e/o gli avvisi di velocità.
- Cloud Messaging e In-App Messaging: non puoi più utilizzare il targeting, le metriche delle campagne, la segmentazione dei segmenti di pubblico e le etichette di analisi.
- Remote Config: non puoi più utilizzare le configurazioni mirate o la personalizzazione.
- A/B Testing: non puoi più utilizzare A/B Testing poiché la misurazione dell'esperimento è fornita da Google Analytics.
- Dynamic Links: qualsiasi funzionalità che si basa sui dati di Google Analytics verràinterrotta.
Inoltre, saranno interessate le seguenti integrazioni:
- Non puoi più esportare i dati di Analytics in BigQuery.
- Non potrai più usufruire delle integrazioni Google Ads o integrazioni Google AdMob.
Analytics: come faccio a segmentare gli utenti che non hanno soddisfatto un criterio?
Puoi riformulare il problema scegliendo come target "negativo" questi utenti. Ad esempio, riformula il problema come "Non mostrare annunci alle persone che hanno acquistato qualcosa" e crea un segmento di pubblico di questi utenti da scegliere come target.
Analytics: i segmenti di pubblico e/o gli eventi definiti nell'interfaccia di Google Analytics sono disponibili anche nella console Firebase?
I segmenti di pubblico e le proprietà utente verranno sincronizzati. Per alcune funzionalità, come la segmentazione e le canalizzazioni chiuse, devi utilizzare l'interfaccia di Google Analytics. Puoi accedere all'interfaccia di Google Analytics direttamente tramite i link diretti dalla console Firebase.
Eventuali modifiche apportate dalla console Firebase possono essere eseguite anche in Google Analytics e verranno applicate in Firebase.
Authentication
Firebase Authentication: quali regioni sono supportate per l'autenticazione tramite telefono?
Firebase Authentication supporta la verifica del numero di telefono a livello globale, ma non tutte le reti inviano messaggi di verifica in modo affidabile. Le seguenti regioni hanno buoni tassi di recapito e dovrebbero funzionare bene per l'autenticazione telefonica. Dove indicato, alcuni corrieri non sono disponibili in una regione a causa di scarsi tassi di successo della consegna.
Regione | Codice |
---|---|
AD | Andorra |
AE | Emirati Arabi Uniti |
AF | Afghanistan |
AG | Antigua e Barbuda |
AL | Albania |
AM | Armenia |
AO | Angola |
AR | Argentina |
AS | Samoa americane |
AT | Austria |
AU | Australia |
AW | Aruba |
AZ | Azerbaigian |
BA | Bosnia ed Erzegovina |
BB | Barbados |
BD | Bangladesh |
BE | Belgio |
BF | Burkina Faso |
BG | Bulgaria |
BJ | Benin |
BM | Bermuda |
BN | Brunei Darussalam |
BO | Bolivia |
BR | Brasile |
BS | Bahamas |
BT | Bhutan |
BW | Botswana |
BY | Bielorussia |
BZ | Belize |
CA | Canada |
CD | Congo (Kinshasa) |
CF | Repubblica Centrafricana |
CG | Congo (Brazzaville) |
CH | Svizzera |
CI | Costa d'Avorio |
CK | Isole Cook |
CL | Cile |
CM | Camerun |
CO | Colombia |
CR | Costa Rica |
CV | Capo Verde |
CW | Curaçao |
CY | Cipro |
CZ | Repubblica Ceca |
DE | Germania |
DJ | Gibuti |
DK | Danimarca |
DM | Dominica |
DO | Repubblica Dominicana |
DZ | Algeria |
EC | Ecuador |
EG | Egitto |
ES | Spagna |
ET | Etiopia |
FI | Finlandia |
FJ | Figi |
FK | Isole Falkland (Malvine) |
FM | Micronesia, Stati Federati di |
FO | Isole Fær Øer |
FR | Francia |
GA | Gabon |
GB | Regno Unito |
DR | Grenada |
GE | Georgia |
GF | Guyana francese |
GG | Guernsey |
GH | Ghana |
GI | Gibilterra |
GL | Groenlandia |
GM | Gambia |
GP | Guadalupa |
GQ | Guinea Equatoriale |
GR | Grecia |
GT | Guatemala |
GY | Guyana |
HK | Hong Kong, RAS di Cina |
HN | Honduras |
RU | Croazia |
1T | Haiti |
HU | Ungheria |
ID | Indonesia |
IE | Irlanda |
IL | Israele |
IM | Isola di Man |
IN | India |
IQ | Iraq |
Informatica | Italia |
JE | Jersey |
JM | Giamaica |
JO | Giordania |
JP | Giappone |
KE | Kenya |
KG | Kirghizistan |
KH | Cambogia |
KM | Comore |
KN | Saint Kitts e Nevis |
KR | Corea del Sud |
KW | Kuwait |
KY | Isole Cayman |
KZ | Kazakistan |
LA | Lao PDR |
LB | Libano |
LC | Santa Lucia |
LI | Liechtenstein |
LK | Sri Lanka |
LS | Lesotho |
LT | Lituania |
LU | Lussemburgo |
LV | Lettonia |
LY | Libia |
MA | Marocco |
MD | Moldavia |
ME | Montenegro |
MF | Saint-Martin (parte francese) |
MG | Madagascar |
MK | Macedonia, Repubblica della |
MM | Myanmar |
MN | Mongolia |
MO | Macao, RAS della Cina |
MS | Montserrat |
MT | Malta |
MU | Mauritius |
MW | Malawi |
MX | Messico |
MY | Malaysia |
MZ | Mozambico |
NA | Namibia |
NC | Nuova Caledonia |
NE | Niger |
NF | Isola Norfolk |
NG | Nigeria |
NI | Nicaragua |
NL | Paesi Bassi |
NO | Norvegia |
NP | Nepal |
NZ | Nuova Zelanda |
OM | Oman |
PA | Panama |
PE | Perù |
PG | Papua Nuova Guinea |
PH | Filippine |
PK | Pakistan |
PL | Polonia |
PM | Saint-Pierre e Miquelon |
PR | Portorico |
PS | Territorio palestinese |
PT | Portogallo |
PY | Paraguay |
QA | Qatar |
RE | Riunione |
RO | Romania |
RS | Serbia |
RU | Federazione Russa |
RW | Ruanda |
SA | Arabia Saudita |
SC | Seychelles |
SE | Svezia |
SG | Singapore |
RI | Sant'Elena |
SI | Slovenia |
SK | Slovacchia |
SL | Sierra Leone |
SN | Senegal |
SR | Suriname |
ST | São Tomé e Príncipe |
SV | El Salvador |
SZ | Regno di eSwatini |
TC | Isole Turks e Caicos |
TG | Togo |
TH | Thailandia |
TL | Timor Est |
TM | Turkmenistan |
TO | Tonga |
TR | Turchia |
TT | Trinidad e Tobago |
TW | Taiwan, Repubblica di Cina |
TZ | Tanzania, Repubblica Unita di |
UA | Ucraina |
UG | Uganda |
US | Stati Uniti d'America |
UY | Uruguay |
UZ | Uzbekistan |
VC | Saint Vincent e Grenadine |
VE | Venezuela (Repubblica Bolivariana del) |
VG | Isole Vergini Britanniche |
VI | Isole Vergini Americane |
VN | Vietnam |
WS | Samoa |
YE | Yemen |
YT | Mayotte |
ZA | Sudafrica |
ZM | Zambia |
ZW | Zimbabwe |
Firebase Authentication: che fine hanno fatto gli SMS senza costi sul piano Spark?
A partire da settembre 2024, per migliorare la sicurezza e la qualità del servizio di autenticazione telefonica, i progetti Firebase devono essere collegati a un account di fatturazione Cloud per attivare e utilizzare il servizio SMS.
Firebase Authentication: come faccio a impedire gli abusi relativi agli SMS quando utilizzo l'autenticazione telefonica?
Per contribuire a proteggere il tuo progetto dal pompaggio del traffico SMS e dall'abuso dell'API, segui i seguenti passaggi:
Valutare la possibilità di impostare un criterio per la regione SMS
Visualizza l'utilizzo degli SMS a livello di regione.
Cerca regioni con un numero molto elevato di SMS inviati e un numero molto basso (o zero) di SMS verificati. Il rapporto tra verificato/inviato è il tasso di successo. I tassi di successo ottimali si aggirano generalmente intorno al 70-85%, poiché l'SMS non è un protocollo di recapito garantito e in alcune regioni potrebbero verificarsi abusi. Le percentuali di successo inferiori al 50% implicano molti SMS inviati, ma pochi accessi riusciti, che è un indicatore comune di utenti malintenzionati e pompaggio del traffico SMS.
Utilizza le Norme relative alle regioni SMS per negare le regioni SMS con tassi di successo ridotti o per consentire solo determinate regioni se la tua app è destinata alla distribuzione solo in determinati mercati.
Limitare i domini di autenticazione autorizzati
Utilizza la
dashboard Impostazioni di autenticazione
per gestire i domini autorizzati. Il dominio localhost
viene aggiunto per impostazione predefinita ai
domini di autenticazione approvati per semplificare lo sviluppo. Valuta la possibilità di rimuoverelocalhost
dai domini autorizzati nel tuo progetto di produzione per impedire agli utenti malintenzionati di eseguire codice sul localhost
loro per accedere al progetto di produzione.
Attivare e applicare App Check
Attiva App Check per contribuire a proteggere il tuo progetto da abusi delle API attestando che le richieste provengono solo da applicazioni associate al tuo progetto.
Per utilizzare Controllo app con Firebase Authentication, devi eseguire l'upgrade a Firebase Authentication with Identity Platform.
Ricorda che devi applicare App Check per l'autenticazione nella Console Firebase (valuta la possibilità di monitorare il traffico prima di applicarlo). Inoltre, controlla attentamente l'elenco dei siti approvati di reCAPTCHA Enterprise per verificare che contenga solo i tuoi siti di produzione e che l'elenco delle applicazioni registrate al tuo progetto in App Check sia preciso.
Tieni presente che App Check aiuta a proteggerti dagli attacchi automatici verificando che la chiamata provenga da una delle tue applicazioni registrate. Non impedisce agli utenti di utilizzare la tua app in modi indesiderati (ad esempio, avviare e non completare mai i flussi di accesso per generare SMS inviati).
Firebase Authentication: i numeri di telefono trasferiti a un nuovo operatore sono supportati dall'autenticazione telefonica?
Al momento, i numeri trasferiti tra operatori comporteranno l'impossibilità di consegnare tutti gli SMS per gli utenti finali. Non esiste una soluzione alternativa e Firebase si sta adoperando per risolvere il problema.
Firebase Authentication: nella mia app per Android, perché ricevo il seguente errore:
Google sign in failed
?
Google sign in failed
Segui i passaggi per la risoluzione dei problemi descritti in queste domande frequenti se ricevi il seguente errore:
GoogleFragment: Google sign in failed
com.google.android.gms.common.api.ApiException: 13: Unable to get token.
at
com.google.android.gms.internal.auth-api.zbay.getSignInCredentialFromIntent(com.google.android.gms:play-services-auth@@20.3.0:6)
Assicurati che l'accesso con Google sia attivato correttamente come fornitore di autenticazione:
Nella console Firebase, apri la sezione Authentication.
Nella scheda Metodo di accesso, disabilita e riattiva il metodo di accesso Google (anche se è già attivo):
Apri il metodo di accesso Google, disattivalo e fai clic su Salva.
Riapri il metodo di accesso Google, attivalo e fai clic su Salva.
Assicurati che la tua app utilizzi il file di configurazione Firebase aggiornato (
google-services.json
).
Ottieni il file di configurazione dell'app.Controlla se l'errore persiste. In caso affermativo, vai al passaggio successivo della risoluzione dei problemi.
Assicurati che siano presenti i client OAuth 2.0 di base richiesti.
Nella pagina Credenziali della console Google Cloud, cerca la sezione ID client OAuth 2.0.
Se i client OAuth 2.0 non sono presenti (e hai eseguito tutti i passaggi per la risoluzione dei problemi descritti sopra), contatta l'assistenza.
Firebase Authentication: nella mia app per la piattaforma Apple, perché ricevo il seguente errore:
You must specify <clientID> in <GIDConfiguration>
?
You must specify <clientID> in <GIDConfiguration>
Segui i passaggi per la risoluzione dei problemi descritti in queste domande frequenti se ricevi il seguente errore:
You must specify |clientID| in |GIDConfiguration|
Assicurati che l'accesso con Google sia attivato correttamente come fornitore di autenticazione:
Nella console Firebase, apri la sezione Authentication.
Nella scheda Metodo di accesso, disabilita e riattiva il metodo di accesso Google (anche se è già attivo):
Apri il metodo di accesso Google, disattivalo e fai clic su Salva.
Riapri il metodo di accesso Google, attivalo e fai clic su Salva.
Assicurati che la tua app utilizzi il file di configurazione Firebase aggiornato (
GoogleService-Info.plist
).
Ottieni il file di configurazione dell'app.Controlla se l'errore persiste. In caso affermativo, vai al passaggio successivo della risoluzione dei problemi.
Assicurati che siano presenti i client OAuth 2.0 di base richiesti.
Nella pagina Credenziali della console Google Cloud, cerca la sezione ID client OAuth 2.0.
Se i client OAuth 2.0 non sono presenti (e hai eseguito tutti i passaggi per la risoluzione dei problemi descritti sopra), contatta l'assistenza.
Firebase Authentication: nella mia app web, perché ricevo il seguente errore:
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
?
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
Segui i passaggi per la risoluzione dei problemi descritti in queste domande frequenti se ricevi il seguente errore:
AuthErrorCode.INVALID_OAUTH_CLIENT_ID
Assicurati che l'accesso con Google sia attivato correttamente come fornitore di autenticazione:
Nella console Firebase, apri la sezione Authentication.
Nella scheda Metodo di accesso, disabilita e riattiva il metodo di accesso Google (anche se è già attivo):
Apri il metodo di accesso Google, disattivalo e fai clic su Salva.
Riapri il metodo di accesso Google, attivalo e fai clic su Salva.
Inoltre, nella configurazione del provider di accesso Google della sezione Authentication, assicurati che l'ID client OAuth e il segreto corrispondano al client web visualizzato nella pagina Credenziali della console Google Cloud (cerca nella sezione ID client OAuth 2.0).
Firebase Authentication: nella mia app web, perché l'accesso con i reindirizzamenti non va a buon fine con il seguente errore:
This domain YOUR_REDIRECT_DOMAIN is not
authorized to run this operation
?
This domain YOUR_REDIRECT_DOMAIN is not
authorized to run this operation
Segui i passaggi per la risoluzione dei problemi descritti in queste domande frequenti se ricevi il seguente errore:
This domain YOUR_REDIRECT_DOMAIN is not authorized to run this operation.
È molto probabile che questo errore sia causato dal fatto che il dominio di reindirizzamento non è elencato come dominio autorizzato per Firebase Authentication o che la chiave API utilizzata con il servizio Firebase Authentication non sia valida.
Innanzitutto, assicurati che YOUR_REDIRECT_DOMAIN sia nell'elenco dei domini autorizzati per il tuo progetto Firebase. Se il tuo dominio di reindirizzamento è già elencato, continua a risolvere i problemi relativi a una chiave API non valida.
Per impostazione predefinita, l'SDK JS di Firebase Authentication si basa sulla chiave API del progetto Firebase etichettata come Browser key
e la utilizza per verificare che un URL di reindirizzamento all'accesso sia valido in base all'elenco dei domini autorizzati.
Authentication ottiene questa chiave API a seconda di come accedi all'SDK Authentication:
Se utilizzi gli helper di autenticazione forniti da Hosting per far accedere gli utenti con l'SDK JS Authentication, Firebase ottiene automaticamente la tua chiave API con il resto della configurazione di Firebase ogni volta che esegui il deployment in Firebase Hosting. Assicurati che
authDomain
nella tua app webfirebaseConfig
sia configurata correttamente per utilizzare uno dei domini per quel sito Hosting. Per verificare, vai suhttps://authDomain__/firebase/init.json
e controlla che il valoreprojectId
corrisponda a quello del tuofirebaseConfig
.Se hosti autonomamente il codice di accesso, puoi utilizzare un file
__/firebase/init.json
per fornire la configurazione di Firebase all'helper per i reindirizzamenti dell'SDK JS Authentication auto-hosted. La chiave API e il valoreprojectId
elencati in questo file di configurazione devono corrispondere afirebaseConfig
della tua app web.
Verifica che questa chiave API non sia stata eliminata: vai al riquadro API e servizi > Credenziali nella console Google Cloud, dove sono elencate tutte le chiavi API per il tuo progetto.
Se il file
Browser key
non è stato eliminato, controlla quanto segue:Assicurati che l'API Firebase Authentication sia nell'elenco delle API consentite per la chiave di accesso (scopri di più sulle restrizioni delle API per le chiavi API).
Se ospiti autonomamente il codice di accesso, assicurati che la chiave API elencata nel file
__/firebase/init.json
corrisponda a quella nella console Cloud. Correggi la chiave nel file, se necessario, quindi esegui nuovamente il deployment dell'app.Se
Browser key
è stato eliminato, puoi chiedere a Firebase di generare una nuova chiave API: nella Console Firebase, vai a settings > Impostazioni progetto e poi nella sezione Le tue app fai clic sulla tua app web. Questa azione consente di creare automaticamente una chiave API che puoi visualizzare nella sezione Configurazione e impostazione dell'SDK per la tua app web.
Tieni presente che nella console Cloud questa nuova chiave API non si chiamerà
Browser key
, ma avrà lo stesso nome del nickname della tua app web Firebase. Se decidi di aggiungere limitazioni delle API a questa nuova chiave API, assicurati che l'API Firebase Authentication sia nell'elenco delle API consentite.Dopo aver creato la nuova chiave API, completa i passaggi applicabili riportati di seguito:
Se utilizzi URL Hosting riservati, esegui nuovamente il deployment dell'app su Firebase in modo che possa ottenere automaticamente la nuova chiave API con il resto della configurazione di Firebase.
Se hosti autonomamente il codice di accesso, copia la nuova chiave API e aggiungila al file
__/firebase/init.json
, quindi esegui nuovamente il deployment dell'app.
Firebase Authentication: come faccio a creare manualmente un client web OAuth?
Apri la pagina Credenziali della console Google Cloud.
Nella parte superiore della pagina, seleziona Crea credenziali > ID client OAuth.
Se ti viene chiesto di configurare la schermata per il consenso, segui le istruzioni sullo schermo e poi continua con i passaggi successivi di queste domande frequenti.
Crea il client web OAuth:
Per Tipo di applicazione, seleziona Applicazione web.
Per le Origini JavaScript autorizzate, aggiungi quanto segue:
http://localhost
http://localhost:5000
https://PROJECT_ID.firebaseapp.com
https://PROJECT_ID.web.app
Per gli URI di reindirizzamento autorizzati, aggiungi quanto segue:
https://PROJECT_ID.firebaseapp.com/__/auth/handler
https://PROJECT_ID.web.app/__/auth/handler
Salva il client OAuth.
Copia il nuovo ID client OAuth e il client secret negli appunti.
Nella console Firebase, apri la sezione Authentication.
Nella scheda Metodo di accesso, apri il provider di accesso con Google, quindi incolla l'ID client e il secret del server web che hai appena creato e copiato dalla console Google Cloud. Fai clic su Salva.
Firebase Authentication: come viene determinato %APP_NAME%
per il modello email dell'email di conferma che può essere inviata a un utente quando si registra utilizzando un indirizzo email e una password?
Prima di dicembre 2022, il campo %APP_NAME%
nel modello email veniva compilato con il nome del brand OAuth di cui veniva eseguito il provisioning automatico ogni volta che un'app per Android veniva registrata nel progetto Firebase. Poiché il brand OAuth viene eseguito
in provisioning solo quando è attivato Accedi con Google, di seguito viene descritto come viene determinato%APP_NAME%
:
Se il nome del brand OAuth è disponibile,
%APP_NAME%
nel modello email sarà il nome del brand OAuth (come per il comportamento precedente a dicembre 2022).Se il nome del brand OAuth non è disponibile, ecco come viene determinato il valore
%APP_NAME%
nel modello email:Per le app web,
%APP_NAME%
sarà il nome del sito Firebase Hosting predefinito (il valore che precede.firebaseapp.com
e.web.app
e in genere l'ID progetto Firebase).Per le app mobile:
Se nella richiesta è presente il nome del pacchetto Android o l'ID bundle iOS,
%APP_NAME%
sarà il nome dell'app utilizzato nel Play Store o nell'App Store (rispettivamente).In caso contrario,
%APP_NAME%
sarà il nome del sito Firebase Hosting predefinito (il valore che precede.firebaseapp.com
e.web.app
e in genere l'ID progetto Firebase).
Tieni presente che se la ricerca del nome del sito Firebase Hosting predefinito non va a buon fine, la soluzione di riserva finale è utilizzare l'ID progetto Firebase come
%APP_NAME%
.
Cloud Functions
Supporto del runtime Cloud Functions
Come faccio a eseguire l'upgrade all'ultima versione supportata di Node.js?
- Assicurati di utilizzare il piano tariffario Blaze.
- Assicurati di utilizzare la versione più recente della CLI Firebase.
- Aggiorna il campo
engines
inpackage.json
delle funzioni. - Se vuoi, puoi testare le modifiche utilizzando Firebase Local Emulator Suite.
- Esegui nuovamente il deployment di tutte le funzioni.
Come faccio ad assicurarmi di aver eseguito il deployment delle mie funzioni in un runtime Node.js specifico?
Nella console Firebase, vai alla dashboard delle funzioni, seleziona una funzione e controlla la lingua della funzione in Dettagli aggiuntivi.
Utilizzo Firebase Extensions. Gli aggiornamenti del runtime di Cloud Functions mi riguarderanno?
Sì. Poiché le estensioni utilizzano Cloud Functions, il runtime delle estensioni dovrà essere aggiornato con le stesse tempistiche di Cloud Functions.
Ti consigliamo di eseguire periodicamente l'aggiornamento alla versione più recente di ogni estensione installata nel progetto. Puoi eseguire l'upgrade delle estensioni dei tuoi progetti tramite la console Firebase o Firebase CLI.
Cloud Functions prezzi
Perché ho bisogno di un account di fatturazione per utilizzare Cloud Functions for Firebase?
Cloud Functions for Firebase si basa su alcuni servizi Google a pagamento. I nuovi deployment delle funzioni con Firebase CLI 11.2.0 e versioni successive si basano su Cloud Build e Artifact Registry. I deployment nelle versioni precedenti utilizzano Cloud Build nello stesso modo, ma si basano su Container Registry e Cloud Storage per lo spazio di archiviazione invece di Artifact Registry. L'utilizzo di questi servizi verrà fatturato in aggiunta ai prezzi esistenti.
Spazio di archiviazione per Firebase CLI 11.2.0 e versioni successive
Artifact Registry fornisce i container in cui vengono eseguite le funzioni. Artifact Registry fornisce i primi 500 MB senza costi, pertanto i primi deployment delle funzioni potrebbero non comportare costi. Al di sopra di questa soglia, ogni GB di spazio di archiviazione aggiuntivo viene fatturato a 0,10 $al mese.
Spazio di archiviazione per Firebase CLI 11.1.x e versioni precedenti
Per le funzioni di cui è stato eseguito il deployment in versioni precedenti, Container Registry, fornisce i contenitori in cui vengono eseguite le funzioni. Ti verrà addebitato il costo per ogni contenitore necessario per il deployment di una funzione. Potresti notare piccoli caricamenti per ogni contenitore archiviato, ad esempio 1 GB di spazio di archiviazione viene fatturato a 0,026 $al mese.
Per saperne di più su come potrebbe cambiare la tua fattura, consulta quanto segue
- Prezzi di Cloud Functions: il livello senza costi aggiuntivi esistente rimane invariato.
- Prezzi di Cloud Build: Cloud Build prevede un livello senza costi aggiuntivi.
- Artifact Registry.
- Container Registry.
Cloud Functions for Firebase è ancora disponibile senza costi?
Sì. Con il piano Blaze, Cloud Functions offre un livello senza costi aggiuntivi per chiamate, tempo di calcolo e traffico internet. Ogni mese vengono forniti senza costi aggiuntivi i primi 2.000.000 di chiamate, 400.000 GB/s, 200.000 CPU/s e 5 GB di traffico internet in uscita. Ti verrà addebitato solo l'utilizzo superiore a queste soglie.
Dopo i primi 500 MB di spazio di archiviazione senza costi, ogni operazione di deployment comporterà costi ridotti per lo spazio di archiviazione utilizzato per il contenitore della funzione. Se il tuo processo di sviluppo dipende dal deployment delle funzioni per i test, puoi ridurre ulteriormente i costi utilizzando Firebase Local Emulator Suite durante lo sviluppo.
Consulta i piani tariffari Firebase e gli scenari di esempio dei Cloud Functionsprezzi.
Firebase prevede di aumentare le quote e i limiti per Cloud Functions for Firebase?
No. Non è prevista alcuna modifica alle quote, ad eccezione della rimozione di un limite massimo di tempo di compilazione. Anziché ricevere errori o avvisi quando viene raggiunta la quota giornaliera di compilazione di 120 minuti, ti verrà addebitato l'importo in base ai termini del piano di prezzi di Blaze. Consulta la sezione Quote e limiti.
Posso ricevere i Google Cloud 300 $ di credito?
Sì, puoi creare un account Cloud Billing nella console Google Cloud per ricevere il credito di 300 $, quindi collegare l'account Cloud Billing a un progetto Firebase.
Scopri di più sul credito Google Cloud qui.
Tieni presente che, in questo caso, dovrai configurare il piano tariffario Blaze nella console Firebase affinché il tuo progetto continui a funzionare dopo l'esaurimento del credito di 300 $.
Voglio seguire un codelab per imparare a utilizzare Firebase. Puoi darmi un account di fatturazione temporaneo?
No, mi dispiace. Puoi utilizzare l'emulatore Firebase per lo sviluppo senza disporre di un account Cloud Billing. In alternativa, prova a richiedere una prova senza costi di Google Cloud. Se continui a riscontrare problemi con il pagamento della fattura a causa di questa modifica, contatta l'assistenza Firebase.
Ho paura di accumulare una fattura enorme.
Puoi configurare avvisi sul budget nella console Google Cloud per contribuire a controllare i costi. Inoltre, puoi impostare limiti sul numero di istanze fatturate create per ciascuna delle tue funzioni. Per avere un'idea dei costi per scenari tipici, consulta gli esempi di prezzi di Cloud Functions.
Come faccio a controllare gli attuali costi di fatturazione?
Visualizza la dashboard Utilizzo e fatturazione nella console Firebase.
Utilizzo Firebase Extensions. Mi serve un account di fatturazione?
Sì. Poiché le estensioni utilizzano Cloud Functions, saranno soggette agli stessi addebiti delle altre funzioni.
Per utilizzare le estensioni, devi eseguire l'upgrade al piano tariffario Blaze. Ti verrà addebitato un piccolo importo (in genere circa 0,01 $al mese) per le risorse Firebase richieste da ogni estensione installata (anche se non vengono utilizzate), oltre a eventuali addebiti associati all'utilizzo dei servizi Firebase.
Cloud Messaging
Cloud Messaging: qual è la differenza tra il compositore di notifiche e Cloud Messaging?
Firebase Cloud Messaging fornisce un insieme completo di funzionalità di messaggistica tramite i suoi SDK client e i protocolli dei server HTTP e XMPP. Per i deployment con requisiti di messaggistica più complessi, FCM è la scelta giusta.
Il compositore di notifiche è una soluzione di messaggistica serverless leggera basata su Firebase Cloud Messaging. Con una console grafica intuitiva e requisiti di codifica ridotti, il compositore di notifiche consente agli utenti di inviare facilmente messaggi per coinvolgere e fidelizzare gli utenti, favorire la crescita delle app e supportare le campagne di marketing.
Funzionalità | Notifications Composer | Cloud Messaging | |
---|---|---|---|
Destinazione | Singolo dispositivo | ||
Clienti iscritti a temi (ad es. meteo) | |||
Clienti in un segmento di utenti predefinito (app, versione, lingua) | |||
Clienti in segmenti di pubblico per l'analisi specificati | |||
Client nei gruppi di dispositivi | |||
In alto dal client al server | |||
Tipo di messaggio | Notifiche fino a 2 KB | ||
Messaggi di dati fino a 4 KB | |||
Pubblicazione | Immediata | ||
Ora locale futura del dispositivo client | |||
Analytics | Analisi della canalizzazione e raccolta delle analisi delle notifiche integrate |
Cloud Messaging: Apple ha annunciato il ritiro del protocollo binario precedente per gli APN. Devo fare qualcosa?
No. Firebase Cloud Messaging è passato al protocollo APN basato su HTTP/2 nel 2017. Se utilizzi FCM per inviare notifiche ai dispositivi iOS, non è richiesta alcuna azione da parte tua.
Cloud Messaging: devo utilizzare altri servizi Firebase per utilizzare FCM?
Puoi utilizzare Firebase Cloud Messaging come componente autonomo, come faresti con GCM, senza utilizzare altri servizi Firebase.
Cloud Messaging: sono già sviluppatore di Google Cloud Messaging (GCM). Devo passare a Firebase Cloud Messaging?
FCM è la nuova versione di GCM del brand Firebase. Eredita l'infrastruttura di base di GCM, con nuovi SDK per semplificare lo sviluppoCloud Messaging.
I vantaggi dell'upgrade all'SDK FCM includono:
- Sviluppo del client più semplice. Non devi più scrivere la tua logica di ripetizione della registrazione o dell'abbonamento.
- Una soluzione di notifica pronta all'uso. Puoi utilizzare il Compose di notifiche, una soluzione di notifiche serverless con una console web che consente a chiunque di inviare notifiche a segmenti di pubblico di destinazione specifici in base alle informazioni di Google Analytics.
Per eseguire l'upgrade dagli SDK GCM agli SDK FCM, consulta le guide per la migrazione delle app per Android e iOS.
Cloud Messaging: perché i miei dispositivi di destinazione apparentemente non riescono a ricevere i messaggi?
Se sembra che i dispositivi non abbiano ricevuto correttamente i messaggi, controlla innanzitutto queste due potenziali cause:
Gestione dei messaggi in primo piano per i messaggi di notifica. Le app client devono aggiungere la logica di gestione dei messaggi per gestire i messaggi di notifica quando l'app è in primo piano sul dispositivo. Consulta i dettagli per iOS e Android.
Restrizioni del firewall di rete. Se la tua organizzazione dispone di un firewall che limita il traffico da o verso internet, devi configurarlo in modo da consentire la connettività con FCM affinché le tue app client Firebase Cloud Messaging possano ricevere messaggi. Le porte da aprire sono:
- 5228
- 5229
- 5230
FCM di solito utilizza 5228, ma a volte utilizza 5229 e 5230. FCM non fornisce IP specifici, quindi devi consentire al firewall di accettare connessioni in uscita a tutti gli indirizzi IP contenuti nei blocchi IP elencati nell'ASN 15169 di Google.
Cloud Messaging: ho implementato
onMessageReceived
nella mia app per Android, ma non viene chiamato.
Quando l'app è in background,
i messaggi di notifica vengono visualizzati nella barra delle app e
onMessageReceived
non viene chiamato. Per i messaggi di notifica con un payload di dati, il messaggio di notifica viene visualizzato nella barra delle app e i dati inclusi nel messaggio di notifica possono essere recuperati dall'intent avviato quando l'utente tocca la notifica.
Per ulteriori informazioni, consulta la pagina Ricevere e gestire i messaggi.
Composto di notifiche:qual è la differenza tra il composto di notifiche e Cloud Messaging?
Il compositore di notifiche è una soluzione di messaggistica serverless leggera basata su Firebase Cloud Messaging. Con una console grafica intuitiva e requisiti di codifica ridotti, il compositore di notifiche consente agli utenti di inviare facilmente messaggi per coinvolgere e fidelizzare gli utenti, favorire la crescita delle app e supportare le campagne di marketing.
Firebase Cloud Messaging fornisce un insieme completo di funzionalità di messaggistica tramite i suoi SDK client e i protocolli dei server HTTP e XMPP. Per i deployment con requisiti di messaggistica più complessi, FCM è la scelta giusta.
Ecco un confronto delle funzionalità di messaggistica fornite da Firebase Cloud Messaging e dal compositore di notifiche:
Funzionalità | Notifications Composer | Cloud Messaging | |
---|---|---|---|
Destinazione | Singolo dispositivo | ||
Clienti iscritti a temi (ad es. meteo) | |||
Clienti in un segmento di utenti predefinito (app, versione, lingua) | |||
Clienti in segmenti di pubblico per l'analisi specificati | |||
Client nei gruppi di dispositivi | |||
In alto dal client al server | |||
Tipo di messaggio | Notifiche fino a 2 KB | ||
Messaggi di dati fino a 4 KB | |||
Pubblicazione | Immediata | ||
Ora locale futura del dispositivo client | |||
Analytics | Analisi della canalizzazione e raccolta delle analisi delle notifiche integrate |
Composto notifiche: sono già sviluppatore di Google Cloud Messaging (GCM) e voglio utilizzare il composto notifiche. Che cosa devo fare?
Il compositore di notifiche è una soluzione pronta all'uso che consente a chiunque di inviare notifiche a segmenti di pubblico specifici in base alle informazioni di Google Analytics. Inoltre, lo strumento per la creazione di notifiche fornisce un'analisi della canalizzazione per ogni messaggio, consentendo una facile valutazione dell'efficacia delle notifiche.
Se sei già uno sviluppatore GCM, per utilizzare il Compose notifiche devi eseguire l'upgrade dagli SDK GCM agli SDK FCM. Consulta le guide per la migrazione delle app per Android e iOS.
Funzionalità di FCM ritirate a giugno 2023
Quali API FCM sono state ritirate il 20 giugno 2023 e cosa devo fare se le sto utilizzando?
Le seguenti API/SDK saranno interessate dal ritiro:
API di server
Nome API | Endpoint API | Impatto sugli utenti | Azione richiesta |
---|---|---|---|
Protocollo HTTP precedente | https://fcm.googleapis.com/fcm/send | Le richieste all'endpoint inizieranno a non andare a buon fine dopo il 21/06/2024. | Esegui la migrazione all'API HTTP v1. |
Protocollo XMPP precedente | fcm-xmpp.googleapis.com:5235 | Le richieste all'endpoint inizieranno a non andare a buon fine dopo il 21/06/2024. | Esegui la migrazione all'API HTTP v1. |
API server Instance ID | https://iid.googleapis.com/v1/web/iid | Le richieste all'endpoint inizieranno a non andare a buon fine dopo il 21/06/2024. | Utilizza l'SDK JS web per creare registrazioni web FCM. |
https://iid.googleapis.com/iid/* | Gli endpoint continueranno a funzionare, ma non supporteranno l'autenticazione tramite chiavi di server statiche dopo il 21/06/2024. | Utilizza un token di accesso OAuth 2.0 ottenuto da un account di servizio. | |
API di gestione dei gruppi di dispositivi | https://fcm.googleapis.com/fcm/notification | L'endpoint continuerà a funzionare, ma non supporterà l'autenticazione tramite chiavi di server statiche dopo il 21/06/2024. | Utilizza un token di accesso OAuth 2.0 ottenuto da un account di servizio. |
Messaggistica upstream tramite XMPP | fcm-xmpp.googleapis.com:5235 | Le chiamate API a FirebaseMessaging.send nell'app non attiveranno i messaggi a monte al server dell'app dopo il 21/06/2024. | Implementa questa funzionalità nella logica del server. Ad esempio, alcuni sviluppatori implementano il proprio endpoint HTTP/gRPC e lo chiamano direttamente per inviare messaggi dai propri client al server dell'app. Consulta questa guida rapida su gRPC per un esempio di implementazione della messaggistica upstream utilizzando gRPC. |
API Batch Send | https://fcm.googleapis.com/batch | Le richieste all'endpoint inizieranno a non andare a buon fine dopo il 21/06/2024. | Esegui la migrazione al metodo di invio dell'API HTTP v1 standard, che supporta HTTP/2 per il multiplexing. |
API SDK Admin di Firebase
Nome API | Lingua dell'API | Impatto sugli utenti | Azione richiesta |
---|---|---|---|
sendToDevice()
|
Node.js | L'API smetterà di funzionare dopo il 21/06/2024 perché chiama l'API di invio HTTP precedente. | Utilizza il metodo send() .
|
sendToDeviceGroup()
|
Node.js | L'API smetterà di funzionare dopo il 21/06/2024 perché chiama l'API di invio HTTP precedente. | Utilizza il metodo send() .
|
sendToTopic()
|
Node.js | L'API smetterà di funzionare dopo il 21/06/2024 perché chiama l'API di invio HTTP precedente. | Utilizza il metodo send() .
|
sendToCondition()
|
Node.js | L'API smetterà di funzionare dopo il 21/06/2024 perché chiama l'API di invio HTTP precedente. | Utilizza il metodo send() .
|
sendAll()/sendAllAsync()/send_all()/sendMulticast()/SendMulticastAsync()/send_multicast()
|
Node.js, Java, Python, Go, C# | Queste API non funzioneranno più dopo il 21/06/2024 perché chiamano l'API di invio batch . | Esegui l'upgrade all'SDK Firebase Admin più recente e utilizza le nuove API: sendEach()/
sendEachAsync()/send_each()/sendEachForMulticast()/sendEachForMulticastAsync()/
send_each_for_multicast() .
Tieni presente che le nuove API non chiamano più l'API di invio batch ritirata e per questo motivo potrebbero creare più connessioni HTTP simultanee rispetto alle vecchie API. |
SDK client
Versioni SDK | Impatto sugli utenti | Azione richiesta |
---|---|---|
SDK GCM (ritirati nel 2018) | Le app che utilizzano gli SDK GCM non potranno registrare token né ricevere messaggi da FCM dopo il 21/06/2024. | Esegui l'upgrade dell'SDK Android all'SDK Firebase più recente, se non l'hai ancora fatto. |
SDK JS versione <7.0.0 (modifica che comporta un interruzione nella versione 7.0.0 nel 2019) | Le app web che utilizzano SDK JS precedenti non potranno registrare token dopo il 21/06/2024. | Esegui l'upgrade dell'SDK web di Firebase alla versione più recente. |
Il servizio subirà un downgrade prima di giugno 2024?
No. Hai 12 mesi di tempo (dal 20/06/2023 al 21/06/2024) per eseguire la migrazione dalle vecchie API alle nuove API senza alcun downgrade del servizio. Ti consigliamo vivamente di pianificare la migrazione il prima possibile per non essere interessato dal ritiro delle API a giugno 2024.
Dopo giugno 2024, potresti riscontrare un aumento degli errori o la mancanza di funzionalità durante l'utilizzo delle API/degli SDK elencati sopra (per ulteriori informazioni, consulta la prossima domanda frequente).
Come e quando verranno chiuse le API obsolete?
FCM inizierà una disattivazione graduale delle API ritirate intorno al 22 luglio 2024. Dopo questa data, i servizi ritirati saranno soggetti a un processo di "sfarfallio" in cui un numero crescente di richieste restituirà risposte di errore. Durante il periodo di graduale ritiro, la frequenza dei seguenti comportamenti e risposte di errore dovrebbe aumentare nel tempo:
Categoria | Che cosa aspettarsi |
---|---|
Protocollo HTTP precedente | Le richieste vengono rifiutate con il codice HTTP 301. |
Protocollo XMPP precedente | Le richieste vengono rifiutate con il codice di errore 302. |
FCM upstream | I messaggi vengono ignorati dal backend di FCM. |
API Batch Send | Le richieste vengono rifiutate con il codice di errore UNIMPLEMENTED e il messaggio di errore "L'API è deprecata". |
SDK GCM - Token di registrazione | Le richieste vengono rifiutate con il codice HTTP 301. |
SDK GCM - Invia messaggi | Le richieste vengono rifiutate con il codice di errore 400 e il messaggio di errore "Il token V3 è stato ritirato". |
Versione degli SDK JS precedente alla 7.0.0 | Le richieste vengono rifiutate con il codice HTTP 501. |
Utilizzo della chiave del server per accedere alle API di gestione di Instance ID e dei gruppi di dispositivi | Le richieste vengono rifiutate con il codice HTTP 401. |
Qual è la differenza tra i token OAuth 2.0 e le chiavi del server?
Un token OAuth 2.0 è un token di breve durata derivato da un account di servizio. Si tratta del modello di autenticazione standard di Google ed è più sicuro delle chiavi del server statiche.
Per indicazioni su come utilizzare la libreria di autenticazione Google per ottenere i token, consulta Utilizzare le credenziali per emettere token di accesso.
Tieni presente che le intestazioni delle richieste sono diverse quando utilizzi i token OAuth 2.0 per le richieste a endpoint diversi.
- API HTTP v1:
Authorization: Bearer $oauth_token
- API server ID istanza e API di gestione dei gruppi di dispositivi:
Authorization: Bearer $oauth_token
access_token_auth: true
Posso eseguire la migrazione delle mie richieste alla nuova API tutte contemporaneamente?
Ti consigliamo di aumentare gradualmente il traffico verso la nuova API. Se prevedi di inviare regolarmente più di 600.000 messaggi al minuto, contatta l'assistenza Firebase per istruzioni su come aumentare la quota o ricevere consigli su come distribuire il traffico.
Qual è la differenza tra l'API HTTP v1 e le API legacy quando invio messaggi a gruppi di dispositivi/argomenti?
Argomenti: non è necessario aggiungere il prefisso "/topics/" al target per argomento quando utilizzi l'API v1.
Gruppi di dispositivi: puoi utilizzare un token di gruppo come target del token nell'API HTTP v1. Tuttavia, l'API HTTP v1 non restituisce i conteggi di successo/errore nella risposta. Ti consigliamo di utilizzare gli argomenti FCM o di gestire autonomamente i gruppi di dispositivi.
L'API HTTP v1 supporta l'invio di messaggi a più token in una richiesta?
No. Questa funzionalità, chiamata "multicast" nelle API HTTP precedenti, non è supportata dall'API HTTP v1, che è progettata meglio per la scalabilità.
Per i casi d'uso in cui la latenza end-to-end è fondamentale o in cui la dimensione totale del fanout è ridotta (meno di 1 milione), Google consiglia di inviare più richieste separate utilizzando l'API HTTP v1. L'API HTTP v1 su HTTP/2 ha un rendimento simile per il 99,9% delle richieste multicast (invio di meno di 100 token). Per i casi d'uso outlier (invio di 1000 token), raggiunge fino a un terzo della frequenza di throughput, quindi è necessaria una maggiore concorrenza per l'ottimizzazione per questo caso d'uso atipico. Gli utenti possono usufruire di un'affidabilità e una disponibilità maggiori con l'API HTTP 1 rispetto al multicast precedente.
Per i casi d'uso in cui la larghezza di banda in uscita e di throughput sono prioritarie o in cui le dimensioni totali del fanout sono elevate (maggiori di 1 milione), Google consiglia la messaggistica argomento. Sebbene la messaggistica argomento richieda un'azione una tantum per abbonare i destinatari a un argomento, offre fino a un tasso di fanout di 10.000 QPS per progetto senza un limite massimo alle dimensioni degli argomenti.
Quali versioni dell'SDK Firebase Admin includono le nuove API?
Piattaforma | Versione dell'SDK Firebase Admin |
---|---|
Node.js | >=11.7.0 |
Python | >=6.2.0 |
Java | >=9.2.0 |
Vai | >=4.12.0 |
.NET | >=2.4.0 |
Qual è la differenza tra l'API di invio batch e l'API HTTP v1?
L'API di invio batch FCM utilizza lo stesso formato del messaggio e lo stesso meccanismo di autenticazione dell'API HTTP v1. Tuttavia, utilizza un endpoint diverso. Se vuoi migliorare l'efficienza, ti consigliamo di utilizzare HTTP/2 per inviare più richieste sulla stessa connessione HTTP all'API HTTP v1.
Cosa devo fare se non riesco ad accedere al mio progetto?
Contatta il team di assistenza Google Cloud per ricevere aiuto.
I nuovi progetti possono abilitare l'API Cloud Messaging precedente?
No. A partire dal 20/05/2024, non sarà più consentito attivare le nostre API precedenti per i nuovi progetti.
Quando posso disattivare l'API Cloud Messaging precedente?
Una volta che hai eseguito completamente la migrazione all'API HTTP v1, puoi disabilitare l'API Cloud Messaging precedente (la pagina potrebbe non caricarsi se l'API è già stata disabilitata).
Quote e limiti di FCM
Come faccio a inviare una notifica a una vasta base di clienti entro 2 minuti?
Purtroppo, questo caso d'uso non può essere supportato. Devi distribuire il traffico in un periodo di 5 minuti.
La mia app invia notifiche agli utenti sugli eventi e questi messaggi devono essere inviati immediatamente per supportare il mio modello di business. Posso avere più quota?
Purtroppo, non possiamo concedere aumenti di quota per questo motivo. Devi distribuire il traffico in un periodo di 5 minuti.
I miei messaggi riguardano eventi programmati. Come faccio a inviare tutto il mio traffico all'inizio dell'ora?
Ti consigliamo di iniziare a inviare le notifiche almeno 5 minuti prima dell'evento.
Quanto tempo occorre per soddisfare la mia richiesta di quota?
Dipende un po' dall'utilizzo di FCM. In ogni caso, puoi aspettarti una risposta entro qualche giorno lavorativo. In alcuni casi, potrebbero esserci alcune interazioni in merito al tuo utilizzo di FCM e a varie circostanze, che possono prolungare la procedura. Se tutti i requisiti sono soddisfatti, la maggior parte delle richieste verrà gestita entro 2 settimane.
Come faccio a monitorare l'utilizzo della quota?
Consulta le indicazioni di Google Cloud su come rappresentare graficamente e monitorare le metriche relative alle quote.
I codici 429 sono difficili da gestire per me / la mia attività. Posso ottenere un'esenzione o una quota maggiore per evitare di ricevere codici 429?
Sebbene siamo consapevoli che i limiti di quota possono essere problematici, le quote sono fondamentali per mantenere il servizio affidabile e non possiamo concedere esenzioni.
Posso ottenere una quota maggiore per un evento temporaneo?
Puoi richiedere una quota aggiuntiva per supportare un evento della durata massima di 1 mese. Invia la richiesta con almeno 1 mese di anticipo rispetto all'evento e fornisci dettagli chiari su quando inizia e termina l'evento. FCM farà ogni sforzo pratico per soddisfare la richiesta (non è possibile garantire alcun aumento). Questi aumenti di quota verranno annullati dopo la data di fine dell'evento.
La mia quota attuale è soggetta a modifiche?
Anche se Google non lo farà alla leggera, le quote possono essere modificate in base alle esigenze per proteggere l'integrità del sistema. Ove possibile, Google ti avviserà in anticipo di queste modifiche.
Cloud Storage for Firebase
Cloud Storage for Firebase: perché non posso utilizzare Cloud Storage for Firebase?
Cloud Storage for Firebase crea un bucket predefinito nel livello senza costi App Engine. In questo modo puoi iniziare a utilizzare Firebase e Cloud Storage for Firebase rapidamente, senza dover inserire una carta di credito o attivare un account Cloud Storage for Firebase.Cloud Billing Inoltre, ti consente di condividere facilmente i dati tra Firebase e un progetto Google Cloud.
Esistono però due casi noti in cui questo bucket non può essere creato e non potrai utilizzare Cloud Storage for Firebase:
- Un progetto importato da Google Cloud che aveva un'applicazione Datastore Master/Slave Datastore.App Engine
-
Un progetto importato da Google Cloud con progetti con prefisso di dominio. Ad esempio:
domain.com:project-1234
.
Al momento non sono disponibili soluzioni alternative per questi problemi e ti consigliamo di creare un nuovo progetto nella console Firebase e di attivare Cloud Storage for Firebase in quel progetto.
Cloud Storage for Firebase: perché ricevo risposte con codice di errore 412 relative alle autorizzazioni degli account di servizio e alle operazioni degli account di servizio non riuscite quando utilizzo l'API Cloud Storage for Firebase?
È probabile che tu stia ricevendo codici di errore 412 perché l'Cloud Storage for Firebase API non è abilitata per il tuo progetto o perché a un account di servizio necessario mancano le autorizzazioni richieste.
Consulta le Domande frequenti correlate.
Cloud Storage for Firebase: nei progetti del piano Spark posso archiviare file eseguibili?
Per i progetti con piano senza costi (Spark), Firebase blocca i caricamenti e l'hosting di determinati tipi di file eseguibili per Windows, Android e Apple a partire dal giorno Cloud Storage for Firebase e Firebase Hosting. Queste norme hanno lo scopo di prevenire gli abusi sulla nostra piattaforma.
La pubblicazione, l'hosting e i caricamenti di file non consentiti sono bloccati per tutti i progetti Spark creati il 28 settembre 2023 o successivamente. Per i progetti Spark esistenti con file caricati prima di questa data, questi file possono comunque essere caricati e ospitati.
Questa limitazione si applica ai progetti del piano Spark. I progetti con il piano di pagamento a consumo (Blaze) non sono interessati.
I seguenti tipi di file non possono essere ospitati su Firebase Hosting e Cloud Storage for Firebase:
- File di Windows con estensioni
.exe
,.dll
e.bat
- File Android con estensione
.apk
- File della piattaforma Apple con estensione
.ipa
Cosa devo fare?
Se vuoi comunque ospitare questi tipi di file dopo il 28 settembre 2023:
- Per l'hosting: esegui l'upgrade al piano Blaze prima di poter eseguire il deployment di questi tipi di file in Firebase Hosting tramite il comando
firebase deploy
. - Per lo spazio di archiviazione: esegui l'upgrade al piano Blaze per caricare questi tipi di file nel bucket che preferisci utilizzando l'interfaccia a riga di comando GCS, la console Firebase o la console Google Cloud.
Utilizza gli strumenti Firebase per gestire le risorse Firebase Hosting e Cloud Storage.
- Per gestire le risorse in Firebase Hosting, utilizza la Console Firebase per eliminare le release secondo questa guida.
- Per gestire le risorse in Cloud Storage, vai alla pagina del prodotto di archiviazione nel tuo progetto.
- Nella scheda File, individua i file non consentiti da eliminare nella gerarchia della cartella, quindi selezionali utilizzando la casella di controllo accanto ai nomi dei file sul lato sinistro del riquadro.
- Fai clic su Elimina e conferma che i file sono stati eliminati.
Consulta la nostra documentazione per ulteriori informazioni sulla gestione delle risorse di hosting con gli strumenti Firebase e dei bucket Cloud Storage per Firebase con le librerie client.
Cloud Storage for Firebase: perché noto un aumento imprevisto delle operazioni di caricamento e download?
In precedenza, le richieste di download e caricamento all'API Cloud Storage for Firebase non venivano conteggiate correttamente. Abbiamo adottato provvedimenti per risolvere il problema, a partire dal 15 settembre 2023.
Per gli utenti di Blaze, le operazioni di caricamento e download inizieranno a essere conteggiate ai fini della fatturazione mensile. Per gli utenti di Spark, inizieranno a essere conteggiati ai fini del limite mensile senza costi.
Ti consigliamo di monitorare la pagina Utilizzo per verificare eventuali aumenti che potrebbero essere conteggiati ai fini dei limiti.
Cloud Storage for Firebase: perché vedo nuovi ID account servizio associati ai miei progetti Firebase che utilizzano Cloud Storage for Firebase?
Firebase utilizza gli account di servizio per operare e gestire i servizi senza condividere le credenziali utente. Quando crei un progetto Firebase, potresti notare che nel progetto sono già disponibili diversi account di servizio.
L'account di servizio utilizzato da Cloud Storage for Firebase è limitato al tuo progetto e si chiama service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
Se hai utilizzato Cloud Storage for Firebase prima del 19 settembre 2022, potresti vedere un account di servizio aggiuntivo nei bucket Cloud Storage collegati in precedenza denominati firebase-storage@system.gserviceaccount.com
. A partire dal 19 settembre 2022, questo account di servizio non è più supportato.
Puoi visualizzare tutti gli account di servizio associati al tuo progetto nella console Firebase, nella scheda Account di servizio.
Aggiunta del nuovo account di servizio
Se hai rimosso l'account di servizio in precedenza o se non è presente nel progetto, puoi eseguire una delle seguenti operazioni per aggiungerlo.
- (Consigliato) Automatico: utilizza l'endpoint REST AddFirebase per importare nuovamente il bucket in Firebase. Dovrai chiamare questo endpoint solo una volta, non una volta per ogni bucket collegato.
-
Manuale:segui i passaggi descritti in Creazione e gestione degli account di servizio.
Seguendo questa guida, aggiungi un account di servizio con il ruolo IAM
Cloud Storage for Firebase Service Agent
e il nome dell'account di servizioservice-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com
.
Rimozione del nuovo account di servizio
Ti sconsigliamo vivamente di rimuovere l'account di servizio perché questo potrebbe bloccare l'accesso ai bucket Cloud Storage dalle tue app. Per rimuovere l'account di servizio dal progetto, segui le istruzioni riportate in Disattivare un account di servizio.
Cloud Storage for Firebase prezzi
Come faccio a prevedere l'importo che mi verrà addebitato per le operazioni di caricamento e download?
Visita la pagina Prezzi di Firebase e utilizza il Calcolatore del piano Blaze. Il calcolatore elenca tutti i tipi di utilizzo per Cloud Storage for Firebase.
Utilizza i cursori per inserire l'utilizzo previsto del bucket di archiviazione. Il calcolatore stima la tua fattura mensile.
Cosa succede se supero i limiti di caricamento, download o spazio di archiviazione del piano Spark per Cloud Storage for Firebase?
Quando superi i limiti per Cloud Storage in un progetto con il piano Spark, il risultato dipende dal tipo di limite superato:
- Se superi il limite di GB archiviati, non potrai archiviare altri dati nel progetto, a meno che non rimuovi alcuni dei dati archiviati o esegui l'upgrade a un piano che offre più spazio di archiviazione o spazio di archiviazione illimitato.
- Se superi il limite di GB scaricati, la tua app non potrà scaricare altri dati fino al giorno successivo (a partire da mezzanotte, ora del Pacifico USA), a meno che non esegui l'upgrade a un piano con limiti meno restrittivi o senza limiti.
- Se superi il limite di operazioni di caricamento o download, la tua app non potrà caricare o scaricare altri dati fino al giorno successivo (a partire dalla mezzanotte, ora del Pacifico USA), a meno che non esegui l'upgrade a un piano con limiti meno restrittivi o senza limiti.
Crashlytics
Visita la Crashlytics pagina Risoluzione dei problemi e domande frequenti per suggerimenti utili e risposte ad altre domande frequenti.
Dynamic Links
Dynamic Links: quali sono i piani futuri di Firebase per Dynamic Links?
Consulta le Dynamic Linksdomande frequenti.
Dynamic Links: perché la mia app per Android accede a ogni link dinamico due volte?
L'API getInvitation
cancella il link dinamico salvato per impedire l'accesso due volte. Assicurati di chiamare questa API
con il parametro autoLaunchDeepLink
impostato su
false
in ciascuna delle attività di link diretti per cancellarlo
nel caso in cui l'attività venga attivata al di fuori dell'attività
principale.
Hosting
Hosting: nei progetti del piano Spark posso archiviare file eseguibili?
Per i progetti con piano senza costi (Spark), Firebase blocca i caricamenti e l'hosting di determinati tipi di file eseguibili per Windows, Android e Apple a partire dal giorno Cloud Storage for Firebase e Firebase Hosting. Queste norme hanno lo scopo di prevenire gli abusi sulla nostra piattaforma.
La pubblicazione, l'hosting e i caricamenti di file non consentiti sono bloccati per tutti i progetti Spark creati il 28 settembre 2023 o successivamente. Per i progetti Spark esistenti con file caricati prima di questa data, questi file possono comunque essere caricati e ospitati.
Questa limitazione si applica ai progetti del piano Spark. I progetti con il piano di pagamento a consumo (Blaze) non sono interessati.
I seguenti tipi di file non possono essere ospitati su Firebase Hosting e Cloud Storage for Firebase:
- File di Windows con estensioni
.exe
,.dll
e.bat
- File Android con estensione
.apk
- File della piattaforma Apple con estensione
.ipa
Cosa devo fare?
Se vuoi comunque ospitare questi tipi di file dopo il 28 settembre 2023:
- Per l'hosting: esegui l'upgrade al piano Blaze prima di poter eseguire il deployment di questi tipi di file in Firebase Hosting tramite il comando
firebase deploy
. - Per lo spazio di archiviazione: esegui l'upgrade al piano Blaze per caricare questi tipi di file nel bucket che preferisci utilizzando l'interfaccia a riga di comando GCS, la console Firebase o la console Google Cloud.
Utilizza gli strumenti Firebase per gestire le risorse Firebase Hosting e Cloud Storage.
- Per gestire le risorse in Firebase Hosting, utilizza la Console Firebase per eliminare le release secondo questa guida.
- Per gestire le risorse in Cloud Storage, vai alla pagina del prodotto di archiviazione nel tuo progetto.
- Nella scheda File, individua i file non consentiti da eliminare nella gerarchia della cartella, quindi selezionali utilizzando la casella di controllo accanto ai nomi dei file sul lato sinistro del riquadro.
- Fai clic su Elimina e conferma che i file sono stati eliminati.
Consulta la nostra documentazione per ulteriori informazioni sulla gestione delle risorse di hosting con gli strumenti Firebase e dei bucket Cloud Storage per Firebase con le librerie client.
Hosting: perché la tabella della cronologia delle release di Hosting nella console Firebase mostra un numero di file superiore a quello effettivamente presente nel mio progetto locale?
Firebase aggiunge automaticamente file aggiuntivi contenenti metadati sul sito Hosting. Questi file sono inclusi nel conteggio totale dei file per la release.
Hosting: qual è la dimensione massima del file che posso eseguire in Firebase Hosting?
Hosting ha un limite di dimensione massima di 2 GB per singolo file.
Ti consigliamo di archiviare i file di dimensioni maggiori utilizzando Cloud Storage, che offre un limite di dimensione massima nell'intervallo dei terabyte per i singoli oggetti.
Hosting: quanti siti Hosting posso avere per progetto Firebase?
La funzionalità multisito di Firebase Hosting supporta un massimo di 36 siti per progetto.
Performance Monitoring
Visita la Performance Monitoring pagina Risoluzione dei problemi e domande frequenti per suggerimenti utili e risposte ad altre domande frequenti.
Performance Monitoring: quanti pattern URL personalizzati posso creare?
Puoi creare fino a 400 pattern URL personalizzati per app e fino a 100 pattern URL personalizzati per dominio per quell'app.
Performance Monitoring: Perché non vedo la visualizzazione in tempo reale dei dati sul rendimento?
Per visualizzare i dati sulle prestazioni in tempo reale, assicurati che la tua app utilizzi una versione dell'SDK Performance Monitoring compatibile con l'elaborazione dei dati in tempo reale.
- iOS: versione 7.3.0 o successive
- tvOS: versione 8.9.0 o successive
- Android: versione 19.0.10 o successive (o Firebase Android BoM versione 26.1.0 o successive)
- Web: versione 7.14.0 o successive
Tieni presente che consigliamo sempre di utilizzare la versione più recente dell'SDK, ma qualsiasi versione elencata sopra consentirà a Performance Monitoring di elaborare i dati quasi in tempo reale.
Realtime Database
Realtime Database: che cos'è una "connessione al database simultanea"?
Una connessione simultanea equivale a un dispositivo mobile, una scheda del browser o un'app di server connessa al database. Firebase impone limiti rigidi al numero di connessioni simultanee al database della tua app. Questi limiti sono stati introdotti per difendere Firebase e i nostri utenti da abusi.
Il limite del piano Spark è 100 e non può essere aumentato. I piani Flame e Blaze hanno un limite di 200.000 connessioni simultanee per database.
Questo limite non corrisponde al numero totale di utenti della tua app, perché non si connettono tutti contemporaneamente. Se hai bisogno di più di 200.000 connessioni simultanee, leggi Scalabilità con più database.
Realtime Database: quali sono le limitazioni di scalabilità di Realtime Database?
Ogni istanza Realtime Database ha limiti per il numero di operazioni di scrittura al secondo. Per le piccole scritture, questo limite è di circa 1000 operazioni di scrittura al secondo. Se stai per raggiungere questo limite, le operazioni batch che utilizzano gli aggiornamenti multipath possono aiutarti a ottenere una maggiore velocità in uscita.
Inoltre, ogni istanza di database ha un limite al numero di connessioni simultanee al database. I nostri limiti predefiniti sono sufficientemente grandi per la maggior parte delle applicazioni. Se stai creando un'app che richiede una maggiore scalabilità, potresti dover suddividere la tua applicazione su più istanze di database per aumentare la scalabilità. Potresti anche prendere in considerazione Cloud Firestore come database alternativo.
Realtime Database: cosa posso fare se supero i limiti di utilizzo di Realtime Database?
Se hai ricevuto un avviso via email o una notifica nella console Firebase che ti informa che hai superato i limiti di utilizzo di Realtime Database, puoi risolvere il problema in base al limite di utilizzo che hai superato. Per visualizzare il tuo utilizzo di Realtime Database, vai alla dashboard Realtime Database Utilizzo nella console Firebase.
Se hai superato il limite di download, puoi eseguire l'upgrade del piano tariffario Firebase o attendere il ripristino del limite di download all'inizio del ciclo di fatturazione successivo. Per ridurre i download, prova a procedere nel seguente modo:
- Aggiungi query per limitare i dati restituiti dalle operazioni di ascolto.
- Controlla se sono presenti query non indicizzate.
- Utilizza ascoltatori che scaricano solo gli aggiornamenti dei dati, ad esempio
on()
anzichéonce()
. - Utilizza le regole di sicurezza per bloccare i download non autorizzati.
Se superi il limite di spazio di archiviazione, esegui l'upgrade del piano di prezzi per evitare interruzioni del servizio. Per ridurre la quantità di dati nel database, prova i seguenti passaggi:
- Esegui job di pulizia periodici.
- Riduci i dati duplicati nel database.
Tieni presente che potrebbe essere necessario del tempo prima che le eliminazioni di dati vengano riportate nell'allocazione dello spazio di archiviazione.
Se superi il limite di connessioni simultanee al database, esegui l'upgrade del piano per evitare interruzioni del servizio. Per gestire le connessioni simultanee al database, prova a connetterti tramite gli utenti tramite l'API REST se non richiedono una connessione in tempo reale.
Realtime Database: cosa succede se supero i limiti di spazio di archiviazione o di download del piano Spark per Realtime Database?
Per offrirti un prezzo prevedibile, le risorse disponibili nei piani Spark hanno un limite. Ciò significa che, se superi un limite del piano in un mese qualsiasi, la tua app verrà disattivata per evitare un ulteriore utilizzo delle risorse e addebiti aggiuntivi.
Realtime Database: cosa succede se supero i limiti di connessioni simultanee del piano Spark per Realtime Database?
Quando la tua app raggiunge il limite di concorrenza del piano Spark, tutte le connessioni successive verranno rifiutate finché alcune delle connessioni esistenti non vengono chiuse. L'app continuerà a funzionare per gli utenti collegati.
Realtime Database: che cosa sono i backup automatici? Offri backup ogni ora per Realtime Database?
I backup automatici sono una funzionalità avanzata rivolta ai clienti che utilizzano il nostro piano tariffario Blaze. Questa funzionalità esegue il backup dei dati di Firebase Realtime Database una volta al giorno e li carica su Google Cloud Storage.
Non offriamo backup ogni ora.
Realtime Database: perché la larghezza di banda registrata per il mio Realtime Database è stata inferiore alla media tra settembre 2016 e marzo 2017?
Per i nostri calcoli della larghezza di banda, in genere includiamo l'overhead della crittografia SSL (in base al livello 5 del modello OSI). Tuttavia, a settembre 2016 abbiamo introdotto un bug che ha causato l'ignoranza del sovraccarico della crittografia nei nostri report sulla larghezza di banda. Ciò potrebbe aver comportato una larghezza di banda e fatture registrate artificialmente ridotte sul tuo account per alcuni mesi.
Abbiamo rilasciato una correzione per il bug a fine marzo 2017, ripristinando i livelli normali di generazione di report e fatturazione della larghezza di banda.
Remote Config
Remote Config: perché i valori recuperati non modificano il comportamento e l'aspetto della mia app?
A meno che non li recuperi con
fetchAndActivate()
,
i valori vengono memorizzati localmente, ma non attivati. Per attivare i valori recuperati in modo che possano essere applicati, chiama activate
. Questo design ti consente di controllare quando cambiano il comportamento e l'aspetto della tua app, perché puoi scegliere quando chiamare activate
. Dopo aver chiamato
activate
, il codice sorgente dell'app determina quando vengono utilizzati i valori aggiornati
dei parametri.
Ad esempio, potresti recuperare i valori e attivarli la volta successiva che un utente avvia la tua app, eliminando la necessità di ritardare l'avvio dell'app mentre questa attende i valori recuperati dal servizio. Le modifiche al comportamento e all'aspetto dell'app si verificano quando l'app utilizza i valori dei parametri aggiornati.
Per scoprire di più sull'API Remote Config e sul modello di utilizzo, consulta Panoramica dell'API Remote Config.
Remote Config: durante lo sviluppo della mia app, eseguo molte richieste di recupero. Perché la mia app non riceve sempre i valori più recenti dal servizio quando invia richieste di recupero?
Durante lo sviluppo dell'app, ti consigliamo di recuperare e attivare le configurazioni molto spesso (molte volte all'ora) per eseguire rapidamente l'iterazione durante lo sviluppo e il test dell'app. Per eseguire l'iterazione rapida in un progetto con un massimo di 10 sviluppatori, puoi impostare temporaneamente un oggetto FirebaseRemoteConfigSettings
con un intervallo di recupero minimo ridotto (setMinimumFetchIntervalInSeconds
) nella tua app.
Remote Config: con quale rapidità il servizio Remote Config restituisce i valori recuperati dopo che la mia app invia una richiesta di recupero?
I dispositivi di solito ricevono i valori recuperati in meno di un secondo e spesso in millisecondi. Il servizio Remote Config gestisce le richieste di recupero in millisecondi, ma il tempo necessario per completare una richiesta di recupero dipende dalla velocità della rete del dispositivo e dalla latenza della connessione di rete utilizzata dal dispositivo.
Se il tuo obiettivo è applicare i valori recuperati alla tua app il prima possibile, ma senza creare un'esperienza utente spiacevole, valuta la possibilità di aggiungere chiamate a fetchAndActivate
ogni volta che la tua app esegue un aggiornamento a schermo intero.
Test Lab
Visita la Test Lab pagina di risoluzione dei problemi per suggerimenti utili e risposte alle domande frequenti.
Firebase User Segmentation Storage
Che cos'è Firebase User Segmentation Storage?
Firebase User Segmentation Storage archivia ID installazione Firebase nonché attributi e segmenti correlati, nonché gli elenchi dei segmenti di pubblico che hai creato per fornire informazioni sul targeting ad altri servizi Firebase che li utilizzano, come la personalizzazione di Crashlytics, FCM, Remote Config e altro ancora.