Cette page a été traduite par l'API Cloud Translation.
Switch to English

Démarrez sur iOS

Cloud Storage pour Firebase vous permet de télécharger et de partager du contenu généré par l'utilisateur, tel que des images et des vidéos, ce qui vous permet de créer du contenu rich media dans vos applications. Vos données sont stockées dans un bucket Google Cloud Storage , une solution de stockage d'objets à l'échelle de l'exaoctet avec une haute disponibilité et une redondance globale. Cloud Storage vous permet de télécharger en toute sécurité ces fichiers directement à partir d'appareils mobiles et de navigateurs Web, en gérant facilement les réseaux irréguliers.

Conditions préalables

  1. Installez le SDK Firebase .
  2. Ajoutez votre application à votre projet Firebase dans la console Firebase .

Créer un bucket de stockage par défaut

  1. Dans le volet de navigation de la console Firebase , sélectionnez Stockage , puis cliquez sur Commencer .

  2. Consultez les messages concernant la sécurisation de vos données de stockage à l'aide des règles de sécurité. Lors du développement, envisagez de configurer vos règles d'accès public .

  3. Sélectionnez un emplacement pour votre compartiment de stockage par défaut.

    • Ce paramètre d'emplacement est l' emplacement des ressources Google Cloud Platform (GCP) par défaut de votre projet. Notez que cet emplacement sera utilisé pour les services GCP de votre projet qui nécessitent un paramètre d'emplacement, en particulier votre base de données Cloud Firestore et votre application App Engine (ce qui est requis si vous utilisez Cloud Scheduler).

    • Si vous ne parvenez pas à sélectionner un emplacement, votre projet dispose déjà d'un emplacement de ressource GCP par défaut. Il a été défini soit lors de la création du projet, soit lors de la configuration d'un autre service nécessitant un paramètre d'emplacement.

    Si vous êtes sur le plan Blaze, vous pouvez créer plusieurs compartiments , chacun avec son propre emplacement .

  4. Cliquez sur Terminé .

Configurer l'accès public

Cloud Storage for Firebase fournit un langage de règles déclaratives qui vous permet de définir comment vos données doivent être structurées, comment elles doivent être indexées et quand vos données peuvent être lues et écrites. Par défaut, l'accès en lecture et en écriture au stockage est limité afin que seuls les utilisateurs authentifiés puissent lire ou écrire des données. Pour commencer sans configurer l' authentification , vous pouvez configurer vos règles d'accès public .

Cela rend le stockage ouvert à tout le monde, même aux personnes n'utilisant pas votre application, alors assurez-vous de restreindre à nouveau votre stockage lorsque vous configurez l'authentification.

Ajoutez Cloud Storage à votre application

  1. Ajoutez la dépendance pour Cloud Storage au Podfile votre projet:

    pod 'Firebase/Storage'
    
  2. Exécutez l' pod install et ouvrez le fichier .xcworkspace créé.

Configurer Cloud Storage

Vous devez initialiser Firebase avant de créer ou d'utiliser toute référence Firebase. Si vous l'avez déjà fait pour une autre fonctionnalité Firebase, vous pouvez ignorer cette étape.

  1. Importez le module Firebase dans votre UIApplicationDelegate :

    Rapide

    import Firebase

    Objectif c

    @import Firebase;
  2. Configurez une instance partagée FirebaseApp , généralement dans l'application de votre application:didFinishLaunchingWithOptions: method:

    Rapide

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

    Objectif c

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. Obtenez une référence au service de stockage à l'aide de l'application Firebase par défaut:

    Rapide

    let storage = Storage.storage()
    

    Objectif c

    FIRStorage *storage = [FIRStorage storage];
    

Vous êtes prêt à commencer à utiliser Cloud Storage!

Tout d'abord, apprenons à créer une référence Cloud Storage .

Configuration avancée

Il existe quelques cas d'utilisation qui nécessitent une configuration supplémentaire:

Le premier cas d'utilisation est parfait si vous avez des utilisateurs à travers le monde et que vous souhaitez stocker leurs données à proximité. Par exemple, vous pouvez créer des buckets aux États-Unis, en Europe et en Asie pour stocker les données des utilisateurs de ces régions afin de réduire la latence.

Le deuxième cas d'utilisation est utile si vous avez des données avec des modèles d'accès différents. Par exemple: vous pouvez configurer un bucket multirégional ou régional qui stocke des images ou d'autres contenus fréquemment consultés, et un bucket nearline ou coldline qui stocke les sauvegardes des utilisateurs ou tout autre contenu rarement consulté.

Dans l'un ou l'autre de ces cas d'utilisation, vous souhaiterez utiliser plusieurs compartiments de stockage .

Le troisième cas d'utilisation est utile si vous créez une application, comme Google Drive, qui permet aux utilisateurs d'avoir plusieurs comptes connectés (par exemple, un compte personnel et un compte professionnel). Vous pouvez utiliser une instance personnalisée de l'application Firebase pour authentifier chaque compte supplémentaire.

Utiliser plusieurs seaux de stockage

Si vous souhaitez utiliser un compartiment de stockage autre que celui par défaut fourni ci-dessus, ou utiliser plusieurs compartiments de stockage dans une seule application, vous pouvez créer une instance de FIRStorage qui référence votre FIRStorage personnalisé:

Rapide

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

Objectif c

// Get a non-default Storage bucket
FIRStorage storage = [FIRStorage storageWithURL:@"gs://my-custom-bucket"];
    

Travailler avec des buckets importés

Lors de l'importation d'un bucket Cloud Storage existant dans Firebase, vous devez autoriser Firebase à accéder à ces fichiers à l'aide de l'outil gsutil , inclus dans le SDK Google Cloud :

gsutil -m acl ch -r -u firebase-storage@system.gserviceaccount.com:O gs://<your-cloud-storage-bucket>

Cela n'affecte pas les compartiments nouvellement créés, car le contrôle d'accès par défaut est défini pour autoriser Firebase. Il s'agit d'une mesure temporaire, et sera effectuée automatiquement à l'avenir.

Utilisez une application Firebase personnalisée

Si vous créez une application plus compliquée à l'aide d'une FirebaseApp personnalisée, vous pouvez créer une instance de Storage initialisée avec cette application:

Rapide

// 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")
    

Objectif 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"];
    

Prochaines étapes