Inizia con Cloud Storage per Unity

Cloud Storage per Firebase ti consente di caricare e condividere contenuti generati dagli utenti, come immagini e video, che ti consentono di creare contenuti multimediali avanzati nelle tue app. I vostri dati sono memorizzati in un Google Cloud Storage secchio - una soluzione di storage oggetto scala Exabyte con alta disponibilità e ridondanza globale. Cloud Storage per Firebase ti consente di caricare in modo sicuro questi file direttamente da dispositivi mobili e browser Web, gestendo facilmente reti irregolari.

Prima di iniziare

Prima di poter utilizzare Cloud Storage , è necessario:

  • Registra il tuo progetto Unity e configuralo per utilizzare Firebase.

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

    • Se non si dispone di un progetto Unity, è possibile scaricare un'applicazione di esempio .

  • Aggiungere la Firebase Unity SDK (in particolare, FirebaseStorage.unitypackage ) al progetto Unity.

Si noti che l'aggiunta di Firebase al progetto Unity comporta compiti sia nella console Firebase e nel progetto Unity aperta (ad esempio, si scaricano i file di configurazione Firebase dalla console, poi li sposta nel vostro progetto Unity).

Crea un bucket Cloud Storage predefinito

  1. Dal pannello di navigazione della console Firebase , selezionare bagagli, quindi fare clic su Inizia.

  2. Esamina i messaggi sulla protezione dei dati di Cloud Storage utilizzando le regole di sicurezza. Durante lo sviluppo, prendere in considerazione la creazione di proprie regole per l'accesso pubblico .

  3. Selezionare un percorso per il secchio di default Cloud Storage.

    • Questa impostazione posizione è del progetto di default posizione risorsa Google Cloud Platform (GCP) . Si noti che questa posizione sarà utilizzata per i servizi GCP nel progetto che richiedono un'impostazione di località, in particolare, il vostro Cloud FireStore database e il vostro App Engine app (che è necessario se si utilizzare il cloud della pianificazione).

    • Se non sei in grado di selezionare una posizione, il tuo progetto ha già una posizione predefinita per le risorse GCP. È stato impostato durante la creazione del progetto o durante la configurazione di un altro servizio che richiede un'impostazione della posizione.

    Se siete sul piano di Blaze, è possibile creare più secchi , ciascuno con la propria posizione .

  4. Fai clic su Fine.

Configura l'accesso pubblico

Cloud Storage per Firebase fornisce un linguaggio di regole dichiarative che ti consente di definire come dovrebbero essere strutturati i tuoi dati, come dovrebbero essere indicizzati e quando i tuoi dati possono essere letti e scritti. Per impostazione predefinita, l'accesso in lettura e scrittura a Cloud Storage è limitato in modo che solo gli utenti autenticati possano leggere o scrivere dati. Per iniziare senza la creazione di autenticazione , è possibile configurare le regole per l'accesso del pubblico .

Ciò rende Cloud Storage aperto a chiunque, anche alle persone che non utilizzano la tua app, quindi assicurati di limitare nuovamente il tuo Cloud Storage quando configuri l'autenticazione.

Accedi al FirebaseStorage di classe

Il Firebase.Storage.FirebaseStorage è il punto di ingresso per il Cloud Storage Unità SDK.

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

Sei pronto per iniziare a utilizzare Cloud Storage!

In primo luogo, cerchiamo di imparare a creare un riferimento Cloud Storage .

Impostazioni avanzate

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

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

Il secondo caso d'uso è utile se si dispone di dati con modelli di accesso diversi. Ad esempio: puoi configurare un bucket multiregionale o regionale che archivia immagini o altri contenuti a cui si accede di frequente e un bucket nearline o coldline che archivia i backup degli utenti o altri contenuti a cui si accede di rado.

In uno di questi casi d'uso, ti consigliamo di utilizzare più secchi Cloud Storage .

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

Utilizza più bucket Cloud Storage

Se si desidera utilizzare un Cloud Storage secchio diversa da quella predefinita di cui sopra, o utilizzare più secchi di cloud storage in una singola applicazione, è possibile creare un'istanza di FirebaseStorage che i riferimenti il secchio personalizzato:

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

Utilizzo di bucket importati

Durante l'importazione di un secchio di Cloud Storage esistente in Firebase, dovrete concedere Firebase la possibilità di accedere a questi file utilizzando il gsutil strumento, incluso nel Google Cloud SDK :

gsutil -m acl ch -r -u service-<project number>@gcp-sa-firebasestorage.iam.gserviceaccount.com gs://<your-cloud-storage-bucket>

È possibile trovare il numero di progetto come descritto nella premessa ai progetti Firebase .

Ciò non influisce sui bucket appena creati, poiché questi hanno il controllo di accesso predefinito impostato per consentire Firebase. Questa è una misura temporanea e verrà eseguita automaticamente in futuro.

Usa un'app Firebase personalizzata

Se si sta costruendo un'applicazione più complicato con un costume FirebaseApp , è possibile creare un'istanza di FirebaseStorage inizializzato con quella 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");

Prossimi passi