Primeiros passos no iOS

Com o Cloud Storage para Firebase, é possível enviar e compartilhar conteúdo gerado por usuários, como imagens e vídeos, permitindo criar conteúdo de rich media nos apps. Os seus dados são armazenados em um intervalo do Google Cloud Storage, uma solução de armazenamento de objetos de escala exabyte com alta disponibilidade e redundância global. Com o Cloud Storage, o upload dos arquivos é feito com segurança e facilidade diretamente de dispositivos móveis e navegadores da Web, mesmo em redes intermitentes.

Pré-requisitos

  1. Instalar o SDK do Firebase.
  2. Adicionar o app ao projeto do Firebase no Firebase console.

Configurar acesso público

Com o Cloud Storage para Firebase, você tem uma linguagem de regras declarativas para definir como os dados são estruturados, indexados e quando podem ser lidos e gravados. Por padrão, o acesso à leitura e gravação no Storage é restrito aos usuários autenticados. Para iniciar sem configurar o Firebase Authentication, defina as regras para acesso público.

Isso deixa o Storage disponível para todos, até para os que não utilizam o app. Por isso, restrinja o Storage novamente quando configurar a autenticação.

Adicionar o Cloud Storage ao app

Verifique se a seguinte dependência está no Podfile do seu projeto:

pod 'Firebase/Core'
pod 'Firebase/Storage'

Execute pod install e abra o arquivo .xcworkspace criado.

Configurar o Cloud Storage

Inicialize o Firebase antes de criar ou usar qualquer referência. Caso já tenha feito isso para outro recurso do Firebase, pule essa etapa.

  1. Importe o módulo do Firebase no seu UIApplicationDelegate:

    Swift

    import Firebase
    

    Objective-C

    @import Firebase;
    
  2. Configure uma instância compartilhada do FirebaseApp, que geralmente está no método application:didFinishLaunchingWithOptions: do app:

    Swift

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

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
    
  3. Receba uma referência para o serviço de armazenamento usando o app padrão do Firebase.

    Swift

    let storage = Storage.storage()
    

    Objective-C

    FIRStorage *storage = [FIRStorage storage];
    

Você está pronto para usar o Cloud Storage!

Primeiro, vamos aprender a criar uma referência do Cloud Storage.

Configuração avançada

Há alguns casos de uso que requerem configuração adicional:

O primeiro caso de uso é perfeito para quem tem usuários em todo o mundo e quer armazenar os dados perto deles. Por exemplo, para armazenar os dados dos usuários dos EUA, da Europa e da Ásia, crie intervalos nessas regiões para reduzir a latência.

O segundo caso de uso é útil quando você tem dados com diferentes padrões de acesso. Por exemplo, configure um intervalo multirregional ou regional que armazene imagens ou outros conteúdos acessados frequentemente e um intervalo nearline ou coldline que armazene backups de usuários ou outros conteúdos pouco acessados.

Em qualquer um desses casos de uso, você deverá usar vários intervalos de armazenamento.

O terceiro caso de uso é útil ao criar um app, como o Google Drive, em que os usuários têm diversas contas conectadas (por exemplo, uma conta pessoal e uma conta corporativa). Para autenticar cada conta adicional, use uma instância personalizada do app do Firebase.

Usar diversos intervalos de armazenamento

Para usar um intervalo de armazenamento diferente do padrão apresentado acima ou usar diversos intervalos de armazenamento em um só app, crie uma instância do FIRStorage que faça referência ao intervalo personalizado:

Swift

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

Objective-C

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

Trabalhar com intervalos importados

Quando um intervalo atual do Cloud Storage é importado para o Firebase, é preciso conceder ao Firebase acesso a esses arquivos com a ferramenta gsutil, inclusa no SDK do Google Cloud:

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

Isso não afeta os intervalos recém-criados pois eles têm o controle de acesso padrão, que autoriza o Firebase. Essa é uma medida temporária e será realizada automaticamente no futuro.

Usar um app personalizado do Firebase

Para construir um app mais complexo usando um FirebaseApp personalizado, crie uma instância de Storage inicializada com o 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"];
    

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.