Confira as novidades do Firebase anunciadas no Google I/O 2022. Saiba mais

Entenda os projetos do Firebase

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Esta página oferece breves visões gerais de vários conceitos importantes sobre os projetos do Firebase. Quando disponível, siga os links para encontrar informações mais detalhadas sobre recursos, serviços, ferramentas e práticas recomendadas.

Relação entre projetos, aplicativos e produtos do Firebase

Um projeto do Firebase é a entidade de nível superior do Firebase. Em um projeto, você pode registrar seus aplicativos Apple, Android ou web. Depois de registrar seus aplicativos no Firebase, você pode adicionar os SDKs do Firebase para qualquer número de produtos do Firebase , como Analytics, Cloud Firestore, Monitoramento de desempenho ou Configuração remota.

Conheça informações mais detalhadas sobre esse processo no guia de primeiros passos da sua plataforma:
iOS+ | Android | web | Unidade | C++ | Vibrar .

Noções básicas sobre a hierarquia dos projetos do Firebase

Diagrama mostrando a hierarquia básica de um projeto do Firebase, incluindo o projeto, seus aplicativos registrados e seus recursos e serviços provisionados Este diagrama mostra a hierarquia básica de um projeto do Firebase. Aqui estão os principais relacionamentos:

  • Um projeto do Firebase é como um contêiner para todos os seus aplicativos e quaisquer recursos e serviços provisionados para o projeto.

  • Um projeto do Firebase pode ter um ou mais aplicativos do Firebase registrados (por exemplo, as versões iOS e Android de um aplicativo ou as versões gratuita e paga de um aplicativo).

  • Todos os aplicativos Firebase registrados no mesmo projeto Firebase compartilham e têm acesso aos mesmos recursos e serviços fornecidos para o projeto . aqui estão alguns exemplos:

    • Todos os aplicativos Firebase registrados no mesmo projeto Firebase compartilham os mesmos back-ends, como Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage e Cloud Functions.

    • Todos os aplicativos Firebase registrados no mesmo projeto Firebase estão associados à mesma propriedade do Google Analytics, onde cada aplicativo Firebase é um fluxo de dados separado nessa propriedade.

Relacionamento entre projetos Firebase e Google Cloud

Quando você cria um novo projeto do Firebase, na verdade está criando um projeto do Google Cloud nos bastidores. Você pode até criar um projeto do Google Cloud primeiro e adicionar o Firebase ao projeto posteriormente. Você pode pensar em um projeto do Google Cloud como um contêiner virtual para dados, código, configuração e serviços.

Observe que, para todos os projetos do Firebase, o Firebase adiciona automaticamente um rótulo de firebase:enabled na página Labels do seu projeto no Console do Google Cloud. Saiba mais sobre este rótulo em nosso FAQ .

Como um projeto do Firebase é um projeto do Google Cloud:

Configurando um projeto Firebase e registrando aplicativos

Você pode configurar um projeto do Firebase e registrar aplicativos no Firebase console (ou, para casos de uso avançado, por meio da Firebase Management REST API ou da Firebase CLI ). Ao configurar um projeto e registrar aplicativos, você precisa tomar algumas decisões organizacionais e adicionar informações de configuração específicas do Firebase aos seus projetos locais.

Para aplicativos de produção, você precisa configurar um fluxo de trabalho de desenvolvimento claro, que geralmente envolve o uso de vários ambientes. Revise nossa documentação sobre fluxos de trabalho do desenvolvedor , incluindo práticas recomendadas gerais e diretrizes gerais de segurança para configurar projetos do Firebase e registrar aplicativos para criar seu fluxo de trabalho de desenvolvimento.

Interagindo com um projeto do Firebase

Além dos SDKs do produto, você pode interagir diretamente com um projeto Firebase usando várias ferramentas e interfaces diferentes.

Console do Firebase

O console do Firebase oferece o ambiente mais avançado para gerenciar produtos, aplicativos e configurações de nível de projeto do Firebase.

Firebase console - tela de visão geral do projeto

O painel esquerdo do console lista os produtos Firebase, organizados por categorias de nível superior. Na parte superior do painel esquerdo, acesse as configurações de um projeto clicando em . As configurações de um projeto incluem integrações , permissões de acesso e faturamento .

O meio do console exibe botões que iniciam fluxos de trabalho de configuração para registrar vários tipos de aplicativos. Depois de começar a usar o Firebase, a área principal do console muda para um painel que exibe estatísticas sobre os produtos que você usa.

Observe que, como um projeto do Firebase também é um projeto do Google Cloud, você pode descobrir que várias tarefas ou produtos exigem o uso do Console do Google Cloud em vez do Console do Firebase.

Firebase CLI (uma ferramenta de linha de comando)

O Firebase também oferece o Firebase CLI para configurar e gerenciar produtos específicos do Firebase, como Firebase Hosting, Cloud Functions para Firebase e Firebase Extensions.

Depois de instalar a CLI, você tem acesso ao comando global firebase . Use a CLI para vincular seu diretório local de aplicativos a um projeto do Firebase e , em seguida, implante novas versões de conteúdo hospedado no Firebase ou atualizações de funções.

API REST de gerenciamento do Firebase

Usando a API REST de gerenciamento do Firebase , você pode gerenciar programaticamente um projeto do Firebase. Por exemplo, você pode registrar programaticamente um aplicativo com um projeto ou listar os aplicativos que já estão registrados ( iOS+ | Android | web ).

Identificadores de projeto do Firebase

Um projeto do Firebase pode ser identificado no back-end do Firebase e em várias interfaces de desenvolvedor usando diferentes identificadores, incluindo o nome do projeto , o número do projeto e o ID do projeto .

o nome do projeto

Ao criar um projeto, você fornece um nome de projeto . Esse identificador é o nome somente interno de um projeto no Firebase console , no Google Cloud Console e na Firebase CLI . O nome do projeto não é exposto em nenhum produto, serviço ou recurso publicamente visível do Firebase ou do Google Cloud; serve simplesmente para ajudá-lo a distinguir mais facilmente entre vários projetos.

Você pode editar o nome de um projeto a qualquer momento nas do projeto do Firebase console. O nome do projeto é exibido no painel superior.

O número do projeto

Um projeto do Firebase (e seu projeto associado do Google Cloud ) tem um número de projeto . Este é o identificador canônico globalmente exclusivo atribuído pelo Google para o projeto. Use esse identificador ao configurar integrações e/ou fazer chamadas de API para Firebase, Google ou serviços de terceiros.

Você não pode editar um número de projeto. Se você excluir um projeto, o número do projeto também será excluído e nunca mais poderá ser usado por nenhum outro projeto.

O código do projeto

Um projeto do Firebase (e seu projeto do Google Cloud associado ) tem um ID de projeto . Este é um identificador exclusivo definido pelo usuário para o projeto em todo o Firebase e Google Cloud. Quando você cria um projeto do Firebase, o Firebase atribui automaticamente um ID exclusivo ao projeto, mas você pode editá-lo durante a configuração do projeto. Esse identificador geralmente deve ser tratado como um alias de conveniência para fazer referência ao projeto.

Arquivos e objetos de configuração do Firebase

Quando você registra um aplicativo com um projeto do Firebase, o console do Firebase fornece um arquivo de configuração do Firebase (aplicativos Apple/Android) ou um objeto de configuração (aplicativos da Web) que você adiciona diretamente ao diretório local do aplicativo.

  • Para aplicativos da Apple, você adiciona um arquivo de configuração GoogleService-Info.plist .
  • Para aplicativos Android, adicione um arquivo de configuração google-services.json .
  • Para aplicativos da web, você adiciona um objeto de configuração do Firebase.

A qualquer momento, você pode obter o arquivo ou objeto de configuração do Firebase de um aplicativo .

Um arquivo ou objeto de configuração do Firebase associa um aplicativo a um projeto específico do Firebase e seus recursos (bancos de dados, depósitos de armazenamento etc.). A configuração inclui "opções do Firebase", que são parâmetros exigidos pelos serviços Firebase e Google para se comunicar com as APIs do servidor Firebase e associar dados do cliente ao projeto Firebase e ao aplicativo Firebase. Aqui estão as "opções do Firebase" mínimas necessárias:

  • Chave de API : uma string criptografada simples usada ao chamar determinadas APIs que não precisam acessar dados privados do usuário (valor de exemplo: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO )

  • ID do projeto : um identificador exclusivo definido pelo usuário para o projeto em todo o Firebase e Google Cloud. Esse identificador pode aparecer em URLs ou nomes de alguns recursos do Firebase, mas geralmente deve ser tratado como um alias de conveniência para fazer referência ao projeto. (valor de exemplo: myapp-project-123 )

  • ID do aplicativo ("AppID") : o identificador exclusivo do aplicativo Firebase em todo o Firebase com um formato específico da plataforma:

    • Aplicativos Firebase Apple: GOOGLE_APP_ID (valor de exemplo: 1:1234567890:ios:321abc456def7890 )
      Este não é um ID de pacote da Apple.
    • Aplicativos Firebase para Android: mobilesdk_app_id (valor de exemplo: 1:1234567890:android:321abc456def7890 )
      Este não é um nome de pacote Android ou ID de aplicativo Android.
    • Firebase Web apps: appId (valor de exemplo: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c )

O conteúdo do arquivo ou objeto de configuração do Firebase é considerado público, incluindo o ID específico da plataforma do aplicativo (ID do pacote Apple ou nome do pacote Android) e os valores específicos do projeto Firebase, como a chave de API, ID do projeto, URL do Realtime Database e Nome do intervalo do Cloud Storage. Diante disso, use as regras de segurança do Firebase para proteger seus dados e arquivos no Realtime Database , Cloud Firestore e Cloud Storage .

Para projetos de código aberto, geralmente não recomendamos incluir o objeto ou arquivo de configuração do Firebase do aplicativo no controle de origem porque, na maioria dos casos, seus usuários devem criar seus próprios projetos do Firebase e apontar seus aplicativos para seus próprios recursos do Firebase (por meio de sua própria configuração do Firebase arquivo ou objeto).

Limites gerais para projetos, aplicativos e sites do Firebase

Aqui estão alguns limites gerais para projetos, aplicativos e sites do Firebase:

  • Número de projetos por conta

    • Plano de preços Spark — A cota de criação de projetos é limitada a uma contagem menor de projetos (geralmente em torno de 5 a 10).
    • Plano de preços Blaze — A cota de criação de projetos por conta aumenta substancialmente, desde que a conta do Cloud Billing associada esteja em situação regular.

    O limite da cota de criação de projetos raramente é uma preocupação para a maioria dos desenvolvedores, mas, se necessário, você pode solicitar um aumento na cota do projeto .

    Esteja ciente de que a exclusão completa de um projeto requer 30 dias e conta para a cota do projeto até que o projeto seja totalmente excluído.

  • Número de aplicativos por projeto

    O Firebase restringe o número total de aplicativos Firebase em um projeto Firebase para 30.

    Você deve garantir que todos os aplicativos do Firebase em um único projeto do Firebase sejam variantes de plataforma do mesmo aplicativo do ponto de vista do usuário final. Leia mais sobre multilocação em nossos documentos de práticas recomendadas.

    Saiba mais sobre o limite de aplicativos por projeto no FAQ.

  • Número de sites de hospedagem por projeto

    O recurso multisite do Firebase Hosting suporta no máximo 36 sites por projeto.

Iniciando seu aplicativo