Inizia a utilizzare Cloud Storage per Unity

Cloud Storage for Firebase ti consente di caricare e condividere contenuti generati dagli utenti, come immagini e video, per creare contenuti multimediali avanzati nelle tue app. I tuoi dati vengono archiviati in un bucket Google Cloud Storage, una soluzione di archiviazione di oggetti su scala exabyte con alta affidabilità e ridondanza globale. Cloud Storage for Firebase ti consente di caricare questi file in modo sicuro direttamente da dispositivi mobili e browser web, gestendo con facilità le reti instabili.

Prima di iniziare

Per poter usare Cloud Storage, devi:

  • Registra il tuo progetto Unity e configuralo in modo che utilizzi Firebase.

    • Se il tuo progetto Unity utilizza già Firebase, significa che è già registrato e configurato per Firebase.

    • Se non hai un progetto Unity, puoi scaricare un'app di esempio.

  • Aggiungi l'SDK Firebase Unity (nello specifico, FirebaseStorage.unitypackage) al tuo progetto Unity.

Tieni presente che l'aggiunta di Firebase al tuo progetto Unity prevede attività sia nella console Firebase sia nel progetto Unity aperto (ad esempio, scarichi i file di configurazione di Firebase dalla console e poi li sposti nel progetto Unity).

Inoltre, assicurati che il tuo progetto Firebase sia nel piano tariffario Blaze con pagamento a consumo, che è un requisito per utilizzare Cloud Storage for Firebase. Se non hai mai utilizzato Firebase e Google Cloud, verifica se hai diritto a un credito per la prova senza costi di 300$.

Crea un bucket Cloud Storage predefinito

  1. Nella console Firebase, vai a Database e spazio di archiviazione > Spazio di archiviazione.

    Se il tuo progetto non è ancora nel piano tariffario Blaze con pagamento a consumo, ti verrà chiesto di eseguire l'upgrade.

  2. Fai clic su Inizia.

  3. Seleziona una località per il bucket predefinito.

  4. Configura Firebase Security Rules per il bucket predefinito. Durante lo sviluppo, valuta la possibilità di configurare le regole per l'accesso pubblico.

  5. Fai clic su Fine.

Ora puoi visualizzare il bucket nella console Firebase (vai alla scheda Database e spazio di archiviazione > Spazio di archiviazione > File). Il formato del nome del bucket predefinito è PROJECT_ID.firebasestorage.app.

Configura l'accesso pubblico

Cloud Storage for Firebase fornisce un linguaggio di regole dichiarativo che ti consente di definire come devono essere strutturati i dati, come devono essere indicizzati e quando possono essere letti e scritti. Per impostazione predefinita, l'accesso in lettura e scrittura a Cloud Storage è limitato, pertanto solo gli utenti autenticati possono leggere o scrivere dati. Per iniziare senza configurare Authentication, puoi configurare le regole per l'accesso pubblico.

In questo modo, Cloud Storage diventa accessibile a chiunque, anche a chi non utilizza la tua app, quindi assicurati di limitare nuovamente Cloud Storage quando configuri l'autenticazione.

Accedi al corso FirebaseStorage

Firebase.Storage.FirebaseStorage è il punto di accesso per l'SDK Unity Cloud Storage.

// Get a reference to the storage service, using the default Firebase App
FirebaseStorage storage = FirebaseStorage.DefaultInstance;

Puoi iniziare a usare Cloud Storage.

Passaggio successivo? Scopri come creare un riferimento Cloud Storage.

Configurazione avanzata

Esistono alcuni casi d'uso che richiedono una configurazione aggiuntiva:

Il primo caso d'uso è perfetto se hai utenti in tutto il mondo e vuoi archiviare i loro dati vicino a loro. Ad esempio, puoi creare bucket negli Stati Uniti, in Europa e in Asia per archiviare i dati degli utenti in queste regioni e ridurre la latenza.

Il secondo caso d'uso è utile se hai dati con pattern di accesso diversi. Ad esempio, puoi configurare un bucket multiregionale o regionale che archivia immagini o altri contenuti ad accesso frequente e un bucket Nearline o Coldline che archivia i backup degli utenti o altri contenuti ad accesso non frequente.

In entrambi i casi d'uso, ti consigliamo di utilizzare più bucket Cloud Storage.

Il terzo caso d'uso è utile se stai creando un'app, come Google Drive, che consente agli utenti di accedere con più account (ad esempio, un account personale e un account di lavoro). Puoi utilizzare un'istanza dell'app Firebase personalizzata per autenticare ogni account aggiuntivo.

Utilizza più bucket Cloud Storage

Se vuoi utilizzare un bucket Cloud Storage diverso da quello predefinito fornito sopra o utilizzare più bucket Cloud Storage in un'unica app, puoi creare un'istanza di FirebaseStorage che fa riferimento al tuo bucket personalizzato:

// Get a non-default Storage bucket
var storage = FirebaseStorage.GetInstance("gs://my-custom-bucket");

Utilizzo dei bucket importati

Quando importi un bucket Cloud Storage esistente in Firebase, devi concedere a Firebase la possibilità di accedere a questi file utilizzando lo strumento gsutil, incluso nell'SDK Google Cloud:

gsutil -m acl ch -r -u service-PROJECT_NUMBER@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://BUCKET_NAME

Puoi trovare il numero del progetto come descritto nell'introduzione ai progetti Firebase.

Ciò non influisce sui bucket appena creati, poiché il controllo degli accessi predefinito è impostato per consentire Firebase. Si tratta di una misura temporanea che in futuro verrà eseguita automaticamente.

Utilizza un'app Firebase personalizzata

Se stai creando un'app più complessa utilizzando un FirebaseApp personalizzato, puoi creare un'istanza di FirebaseStorage inizializzata con l'app:

// Get the default bucket from a custom FirebaseApp
FirebaseStorage storage = FirebaseStorage.GetInstance(customApp);

// Get a non-default bucket from a custom FirebaseApp
FirebaseStorage storageCustom = FirebaseStorage.GetInstance(customApp, "gs://my-custom-bucket");

Passaggi successivi