Inizia a utilizzare Cloud Storage sulle piattaforme Apple

Cloud Storage for Firebase ti consente di caricare e condividere contenuti generati dagli utenti, ad esempio come immagini e video, per consentirti di sviluppare contenuti rich media app. I tuoi dati vengono archiviati in un Google Cloud Storage: un soluzione di archiviazione di oggetti con scalabilità in exabyte ad alta disponibilità e ridondanza. Cloud Storage for Firebase ti consente di caricare questi file in modo sicuro direttamente dai dispositivi mobili e dai browser web, gestendo le reti instabile con e la semplicità d'uso.

Prerequisiti

  1. Installa l'SDK Firebase.
  2. Aggiungi l'app al progetto Firebase nella console Firebase.

Crea un bucket Cloud Storage predefinito

  1. Nel riquadro di navigazione della console Firebase, seleziona Spazio di archiviazione. quindi fai clic su Inizia.

  2. Leggi i messaggi sulla protezione dei tuoi dati di Cloud Storage tramite le funzionalità di sicurezza le regole del caso. Durante lo sviluppo, ti consigliamo di configurare le regole per l'accesso pubblico.

  3. Seleziona una località per la tua predefinita. Cloud Storage bucket.

    • Questa impostazione di località corrisponde alla località predefinita della risorsa Google Cloud (Google Cloud) del tuo progetto. Tieni presente che questa località verrà utilizzata per i servizi Google Cloud nel tuo progetto che richiedono l'impostazione della località, in particolare Cloud Firestore e i tuoi App App Engine (obbligatorio se utilizzi Cloud Scheduler).

    • Se non riesci a selezionare una località, significa che il tuo progetto ha già una località predefinita per le risorse Google Cloud. È stato impostato durante il progetto creazione o configurazione di un altro servizio che richiede una posizione dell'ambientazione.

    Se hai scelto il piano Blaze, puoi crea più bucket, ognuno con il proprio località.

  4. Fai clic su Fine.

Configura l'accesso pubblico

Cloud Storage for Firebase offre un linguaggio di regole dichiarative che ti consente per definire come strutturare i dati, come indicizzare e quando i dati possono essere letti e scritti. Per impostazione predefinita, l'accesso in lettura e scrittura Cloud Storage è limitato, quindi solo gli utenti autenticati possono leggere o scrivere e i dati di Google Cloud. Per iniziare senza configurare Authentication, puoi: configurare le regole per l'accesso pubblico.

In questo modo Cloud Storage è disponibile per tutti, anche per le persone che non utilizzano il tuo quindi assicurati di limitare nuovamente Cloud Storage durante la configurazione autenticazione.

Aggiungi Cloud Storage alla tua app

Usa Swift Package Manager per installare e gestire le dipendenze di Firebase.

  1. In Xcode, con il progetto dell'app aperto, vai a File > Aggiungi pacchetti.
  2. Quando richiesto, aggiungi il repository dell'SDK delle piattaforme Apple Firebase:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Scegli la libreria Cloud Storage.
  5. Aggiungi il flag -ObjC alla sezione Altri flag linker delle impostazioni di build del target.
  6. Al termine, Xcode inizierà automaticamente a risolvere e scaricare il le dipendenze in background.

Configura Cloud Storage

Devi inizializzare Firebase prima che venga creato o utilizzato un riferimento Firebase. Se l'hai già fatto per un'altra funzionalità di Firebase, puoi saltare questo passaggio.

  1. Importa il modulo FirebaseCore nel tuo UIApplicationDelegate e tutti gli altri Moduli Firebase utilizzati dal delegato della tua app. Ad esempio, per utilizzare Cloud Firestore e Authentication:

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. Configura un FirebaseApp nel delegato della tua applicazione Metodo application(_:didFinishLaunchingWithOptions:):

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. Se utilizzi SwiftUI, devi creare un delegato per l'applicazione e collegarlo al tuo struct App tramite UIApplicationDelegateAdaptor oppure NSApplicationDelegateAdaptor. Devi anche disattivare lo swizzling del delegato dell'app. Per maggiori informazioni, consulta le istruzioni di SwiftUI.

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          
  4. Ottieni un riferimento al servizio Cloud Storage utilizzando l'app Firebase predefinita:

    Swift

    let storage = Storage.storage()

    Objective-C

    FIRStorage *storage = [FIRStorage storage];

Puoi iniziare a usare Cloud Storage.

Innanzitutto, scopriamo come creare un Cloud Storage riferimento.

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 propri dati accanto a loro. Ad esempio, puoi creare bucket negli Stati Uniti, in Europa e in Asia per archiviare i dati per gli utenti di quelle regioni al fine di 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 in cui archiviare immagini o altri contenuti a cui si accede frequentemente e un bucket Nearline o Coldline in cui vengono archiviati backup degli utenti o altri contenuti a cui si accede raramente.

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

Il terzo caso d'uso è utile se stai creando un'app, come Google Drive, che consente agli utenti di avere più account su cui hanno eseguito l'accesso (ad esempio un account personale e un account di lavoro). Puoi utilizzare un'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 più bucket Cloud Storage in un'unica app, puoi creare un'istanza di FIRStorage che fa riferimento al tuo bucket personalizzato:

Swift

// Get a non-default Cloud Storage bucket
storage = Storage.storage(url:"gs://my-custom-bucket")
    

Objective-C

// Get a non-default Cloud Storage bucket
FIRStorage storage = [FIRStorage storageWithURL:@"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 tali file utilizzando gsutil, incluso in SDK Google Cloud:

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

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

Ciò non influisce sui bucket appena creati, poiché hanno l'accesso predefinito per consentire a Firebase. Si tratta di una misura temporanea e verrà eseguite automaticamente in futuro.

Utilizza un'app Firebase personalizzata

Se stai creando un'app più complicata utilizzando un'FirebaseApp personalizzata, puoi crea un'istanza di Storage inizializzata con quell'app:

Swift

// Get the default bucket from a custom FirebaseApp
storage = Storage.storage(app:customApp)

// Get a non-default bucket from a custom FirebaseApp
storage = Storage.storage(app:customApp, url:"gs://my-custom-bucket")
    

Objective-C

// Get the default bucket from a custom FIRApp
FIRStorage storage = [FIRStorage storageForApp:customApp];

// Get a non-default bucket from a custom FIRApp
FIRStorage storage = [FIRStorage storageForApp:customApp withURL:@"gs://my-custom-bucket"];
    

Passaggi successivi