Firebase App Distribution: conceitos-chave, distribuição de APK e IPA e configuração

Autor: IT Sectr Publicado: 2026-04-29 Tempo de leitura: 8 min

Firebase App Distribution é um serviço do Google para distribuir builds de pré-lançamento de aplicativos móveis entre testers e equipes internas sem precisar publicá-los nas lojas de aplicativos. O App Distribution fornece uma interface unificada para upload de arquivos APK e IPA, gerenciamento de grupos de testers e coleta de feedback. De acordo com Firebase Documentation, 2026, o serviço notifica automaticamente os testers sobre novas versões por e-mail e notificações push, e a integração com Fastlane permite publicar builds diretamente do pipeline CI/CD sem ações manuais. O App Distribution suporta Android (AAB/APK) e iOS (IPA), incluindo distribuição ad-hoc e enterprise.

Pontos principais

  • App Distribution — um serviço Firebase para distribuir versões beta de aplicativos entre testers sem publicar no Google Play ou App Store.
  • Grupos de testers — um sistema flexível de gerenciamento de acesso: crie grupos por funções, projetos ou estágios de teste com diferentes permissões de build.
  • Notificações automáticas — os testers recebem notificações por e-mail e push a cada novo build com um link de instalação.
  • Fastlane + Gradle — integração completa com sistemas CI/CD para publicação automática de builds a cada commit ou pull request.
  • Feedback — os testers podem enviar capturas de tela, logs e comentários através da interface integrada ou Firebase Crashlytics.

O que é Firebase App Distribution

Firebase App Distribution é um serviço do Google para distribuir versões de pré-lançamento de aplicativos móveis entre testers e partes interessadas. Ao contrário da publicação em lojas de aplicativos, o App Distribution permite entregar builds a participantes selecionados instantaneamente, sem um longo processo de revisão. O serviço é integrado ao Firebase Crashlytics, permitindo que os desenvolvedores recebam relatórios de falhas diretamente dos testers e corrijam problemas antes do lançamento público.

Por que usar o App Distribution

O processo tradicional de distribuição de versões beta envolve o envio manual de arquivos APK/IPA por e-mail, upload para serviços de compartilhamento de arquivos de terceiros ou configuração de um servidor próprio. Firebase App Distribution resolve esses problemas: um repositório unificado de builds no Google Cloud, notificações automáticas para testers, gerenciamento centralizado de acesso e feedback integrado via Firebase Crashlytics. O serviço é indispensável para equipes que praticam CI/CD e lançamentos regulares: um novo build está disponível para os testers dentro de um minuto após o upload.

Formatos de build suportados

O App Distribution suporta todos os formatos de build padrão para plataformas móveis. Para Android — APK e Android App Bundle (AAB) com geração automática de APK a partir de AAB durante a instalação. Para iOS — arquivos IPA para distribuição ad-hoc, desenvolvimento e enterprise. Cada build é acompanhado por notas de versão, número de versão e código de build para rastreamento. O tamanho máximo de arquivo para upload é de 500 MB e os builds são armazenados por 150 dias.

Upload de builds e gerenciamento de versões

O upload de builds para o Firebase App Distribution é feito através do Firebase Console, CLI (firebase appdistribution:distribute) ou ferramentas automatizadas como Fastlane e Gradle. Ao fazer upload, você especifica a versão do build, as notas de versão e a lista de testers ou grupos que devem receber uma notificação. O Firebase atribui automaticamente um identificador único ao build e o disponibiliza para instalação através de um link.

Gerenciamento de versões através do Firebase Console

O Firebase Console fornece uma interface web para upload de builds e gerenciamento de versões. O console exibe o histórico de todos os builds enviados com data, versão, status e número de instalações. Um desenvolvedor pode desabilitar uma versão específica se um bug crítico for encontrado — isso bloqueará a instalação dessa versão para todos os testers. O console também mostra um gráfico de instalações por dia, ajudando a acompanhar a atividade de teste.

Upload automático via Firebase CLI

O Firebase CLI permite fazer upload de builds com um único comando, o que é conveniente para integração em pipelines CI/CD. O comando distribute aceita um caminho de arquivo, um token de acesso ao projeto, uma lista de grupos de testers e notas de versão opcionais. A autenticação usa uma conta de serviço do Firebase com a função de Administrador do Firebase App Distribution. A CLI suporta builds Android e iOS, detectando automaticamente a plataforma pela extensão do arquivo.

bash
# Upload de build via Firebase CLI
firebase appdistribution:distribute \
    app-release.apk \
    --app 1:123456789:android:abc123def456 \
    --groups "qa-team,product-owners" \
    --release-notes "Bug de autorização corrigido" \
    --token "FIREBASE_TOKEN"

Gerenciamento de testers e grupos

Firebase App Distribution fornece um sistema flexível de gerenciamento de testers: você pode adicionar participantes por e-mail, criar grupos por funções ou projetos e atribuir diferentes builds a diferentes grupos. Quando um novo tester é adicionado, o sistema envia um e-mail de convite com instruções para instalar o aplicativo. Os testers recebem notificações automáticas sobre cada novo build atribuído ao seu grupo.

Criação de grupos de testers

Os grupos permitem organizar os testers funcionalmente. Exemplos de grupos: Equipe de QA (acesso completo a todos os builds), Product Owners (acesso a builds estáveis), Testers Externos (acesso limitado para beta testers externos). Um mesmo tester pode pertencer a vários grupos. Ao fazer upload de um build, o desenvolvedor seleciona os grupos-alvo — apenas os membros dos grupos selecionados recebem notificações, eliminando o ruído de informação.

Adicionar testers via API

Para adicionar testers programaticamente, é usada a API do Firebase App Distribution. A API permite criar testers, adicioná-los a grupos e excluí-los quando necessário. Isso é útil para integração com sistemas internos de gerenciamento de testes e rastreadores de bugs. Quando um tester é adicionado via API, ele também recebe um e-mail de convite com um link para instalar o primeiro aplicativo.

js
const admin = require("firebase-admin")

const serviceAccount = require("./serviceAccountKey.json")
admin.initializeApp({ credential: admin.credential.cert(serviceAccount) })

async function addTestersToGroup(email, groupAlias) {
    try {
        await admin.appDistribution().addTesters(email, [groupAlias])
        console.log("Tester adicionado ao grupo")
    } catch (error) {
        console.error("Erro:", error)
    }
}

addTestersToGroup("tester@example.com", "qa-team")

Distribuição de builds Android

A distribuição de builds Android através do Firebase App Distribution suporta dois formatos: APK e Android App Bundle (AAB). Ao enviar um AAB, o Firebase gera automaticamente um APK compatível com o dispositivo do tester usando o Google Play App Signing. Os testers instalam o aplicativo através de um link direto — eles não precisam de acesso ao Google Play Console, nem precisam ser adicionados como testers no Play Console. Isso simplifica significativamente o processo de teste beta para Android.

Requisitos de builds Android

Para instalar via App Distribution, os testers devem habilitar a instalação de fontes desconhecidas no dispositivo. O Firebase gera automaticamente um link para uma página web com um botão de instalação do APK. Para o formato AAB, o dispositivo deve suportar a Play Core Library e ter o Google Play Store instalado. O Firebase recomenda usar AAB para versões finais e APK para iterações rápidas.

Configuração do Gradle para App Distribution

O plugin Firebase App Distribution para Gradle permite enviar builds diretamente de uma tarefa Gradle. A configuração inclui adicionar o plugin com.google.firebase.appdistribution, configurar uma conta de serviço e definir os grupos de destino. Após a configuração, a tarefa assembleDistRelease compilará o aplicativo e o enviará para o Firebase App Distribution com um único comando.

groovy
// build.gradle (module: app)
plugins {
    id 'com.android.application'
    id 'com.google.firebase.appdistribution'
}

android { // standard config }

firebaseAppDistribution {
    appId "1:123456789:android:abc123def456"
    serviceCredentialsFile "firebase-sa.json"
    groups "qa-team"
    releaseNotes "Build automático"
}

Distribuição de builds iOS

A distribuição de builds iOS através do Firebase App Distribution requer configuração adicional porque a Apple restringe a instalação de aplicativos fora da App Store. Para distribuir aplicativos iOS, é necessário usar certificados ad-hoc ou enterprise do programa Apple Developer. Os testers devem ser adicionados ao Portal de Desenvolvedores da Apple como dispositivos para distribuição ad-hoc, ou usar distribuição enterprise sem limite de dispositivos.

Configuração de distribuição ad-hoc

Para distribuição ad-hoc, é necessário coletar os UDIDs de todos os dispositivos dos testers e adicioná-los ao Portal de Desenvolvedores da Apple. Firebase App Distribution mostra instruções aos testers para encontrar seu UDID e salva automaticamente os dispositivos registrados. Após adicionar o UDID ao perfil de provisionamento e compilar o IPA, os testers recebem um link de instalação. O Firebase recomenda usar um certificado enterprise para projetos com um grande número de testers, já que o ad-hoc é limitado a 100 dispositivos por conta.

Compilação de IPA via Fastlane

Fastlane é a ferramenta recomendada para automatizar a compilação de aplicativos iOS. O lane match gerencia certificados e perfis de provisionamento, enquanto o lane sigh cria um IPA para distribuição. O Firebase App Distribution integra-se com o Fastlane através do plugin firebase_app_distribution, que envia o IPA e notifica os testers. O Fastlane também suporta gerenciamento de versões e notas de versão através de plugins adicionais.

ruby
# Fastfile
lane :beta do
    match(type: :adhoc)
    gym(scheme: "MyApp", export_method: "ad-hoc")
    firebase_app_distribution(
        app: "1:123456789:ios:abc123def456",
        groups: "qa-team",
        release_notes:         release_notes: "Build de #\{Time.now.strftime
            ('%Y-%m-%d %H:%M')}"
    )
end

Integração com CI/CD e Fastlane

A integração completa do Firebase App Distribution com CI/CD permite publicar automaticamente novos builds a cada commit no repositório. Configurando um pipeline de CI, a equipe recebe feedback instantâneo dos testers minutos após um push de código. O App Distribution suporta todos os sistemas CI populares: GitHub Actions, GitLab CI, Jenkins, Bitrise e CircleCI. Cada plataforma requer sua própria configuração, mas o princípio geral é o mesmo: compilar → enviar → notificar.

Configuração via GitHub Actions

O GitHub Actions permite configurar a distribuição automática de builds ao fazer push para o branch develop ou ao criar um pull request. O workflow inclui instalar Java/Flutter/Node.js, compilar o aplicativo, autenticar através de uma conta de serviço do Firebase e executar a CLI do Firebase com o comando distribute. Os segredos (tokens, contas de serviço) são armazenados no GitHub Secrets e não são expostos nos logs de build. Para iOS, é necessária configuração adicional do Xcode e instalação do Fastlane no workflow.

yaml
# .github/workflows/distribute.yml
name: Distribute to Firebase
on:
  push: { branches: [ develop ] }
jobs:
  build-and-distribute:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Setup Java
        uses: actions/setup-java@v3
        with: { distribution: "temurin", java-version: "17" }
      - name: Build APK
        run: ./gradlew assembleDebug
      - name: Upload to Firebase
        uses: wzieba/Firebase-Distribution-GitHub-Action@v1
        with:
          appId: "${{ secrets.FIREBASE_APP_ID }}"
          serviceCredentialsFileContent: "${{ secrets.FIREBASE_SA_KEY }}"
          groups: qa-team
          file: app/build/outputs/apk/debug/app-debug.apk

Coleta de feedback

O Firebase App Distribution integra-se com o Firebase Crashlytics para coleta automática de relatórios de falhas dos testers. O Crashlytics vincula automaticamente uma falha a uma versão de build e dispositivo específicos, ajudando a localizar e corrigir rapidamente o problema. Os testers também podem enviar capturas de tela e comentários através da interface web do App Distribution, recebendo um link do formulário de feedback após instalar o build.

Perguntas frequentes

Qual a diferença entre App Distribution e TestFlight?

Firebase App Distribution é um serviço multiplataforma (Android + iOS), ao contrário do TestFlight que funciona apenas para iOS. O App Distribution também integra-se com Crashlytics e Firebase Analytics, fornecendo um ecossistema unificado para testes beta em ambas as plataformas.

Por quanto tempo os builds são armazenados no App Distribution?

Os builds são armazenados por 150 dias a partir da data de upload. Após esse período, eles são excluídos automaticamente. Recomenda-se enviar novos builds regularmente e excluir manualmente os obsoletos através do Firebase Console para evitar que os testers instalem versões antigas.

Quantos testers podem ser adicionados?

Não há limite para o número de testers no Firebase App Distribution. Para distribuição ad-hoc iOS, aplica-se o limite da Apple de 100 dispositivos por conta. Para distribuição enterprise Android e iOS, não há restrições quanto ao número de testers.

Posso enviar AAB em vez de APK para Android?

Sim, o App Distribution suporta AAB (Android App Bundle). O Firebase gera automaticamente um APK a partir do AAB para cada dispositivo do tester usando o Google Play App Signing. Isso é especialmente conveniente para testar antes de publicar na Play Store.

Firebase App Distribution é gratuito?

Sim, o App Distribution está incluído no plano gratuito Spark do Firebase. Limites do plano Spark: até 500 testers e 25.000 instalações por mês por projeto. O plano Blaze remove esses limites e adiciona suporte prioritário.

Resumo

  • Firebase App Distribution é um serviço para distribuir builds beta de aplicativos móveis com suporte para Android (APK/AAB) e iOS (IPA) sem publicar em lojas.
  • Gerenciamento de testers — um sistema flexível de grupos com notificações automáticas por e-mail e push a cada novo build.
  • Upload de builds é feito através do Firebase Console, CLI, plugin Gradle ou Fastlane com notificação automática aos testers.
  • Builds Android suportam APK e AAB com geração automática de APK a partir de AAB, instalação via link direto sem Google Play Console.
  • Builds iOS exigem um certificado ad-hoc ou enterprise da Apple, com registro de UDID e suporte Fastlane para automação de build IPA.
  • Integração CI/CD — GitHub Actions, GitLab CI, Jenkins, Bitrise com Firebase CLI ou Fastlane para publicação automática a cada push.
  • Gratuito até 500 testers e 25.000 instalações por mês, builds armazenados por 150 dias, integrado com Firebase Crashlytics para coleta de relatórios de falhas.

Vamos desenvolver um aplicativo móvel chave na mão

A IT Sectr cria aplicativos para iOS e Android para startups e empresas desde 2017. Nós vamos aconselhá-lo e propor a melhor solução.

Discutir o projeto

Leia também