Firebase App Distribution: concetti chiave, distribuzione di APK e IPA e configurazione

Autore: IT Sectr Pubblicato: 2026-04-29 Tempo di lettura: 8 min

Firebase App Distribution è un servizio Google per distribuire versioni di pre-rilascio di applicazioni mobili a tester e team interni senza doverle pubblicare negli store di applicazioni. App Distribution fornisce un'interfaccia unificata per il caricamento di file APK e IPA, la gestione di gruppi di tester e la raccolta di feedback. Secondo Firebase Documentation, 2026, il servizio notifica automaticamente i tester delle nuove versioni tramite email e notifiche push, e l'integrazione Fastlane consente di pubblicare build direttamente dalla pipeline CI/CD senza azioni manuali. App Distribution supporta sia Android (AAB/APK) che iOS (IPA), inclusa la distribuzione ad-hoc e enterprise.

Punti chiave

  • App Distribution — un servizio Firebase per distribuire versioni beta di app ai tester senza pubblicarle su Google Play o App Store.
  • Gruppi di tester — un sistema flessibile di gestione accessi: crea gruppi per ruoli, progetti o fasi di test con diversi permessi sui build.
  • Notifiche automatiche — i tester ricevono notifiche email e push a ogni nuovo build con un link di installazione.
  • Fastlane + Gradle — integrazione completa con sistemi CI/CD per la pubblicazione automatica dei build a ogni commit o pull request.
  • Feedback — i tester possono inviare screenshot, log e commenti tramite l'interfaccia integrata o Firebase Crashlytics.

Cos'è Firebase App Distribution

Firebase App Distribution è un servizio Google per distribuire versioni di pre-rilascio di applicazioni mobili a tester e parti interessate. A differenza della pubblicazione negli store di applicazioni, App Distribution consente di consegnare build a partecipanti selezionati istantaneamente, senza un lungo processo di revisione. Il servizio è integrato con Firebase Crashlytics, consentendo agli sviluppatori di ricevere rapporti di crash direttamente dai tester e correggere i problemi prima del rilascio pubblico.

Perché usare App Distribution

Il processo tradizionale di distribuzione di versioni beta comporta l'invio manuale di file APK/IPA via email, il caricamento su servizi di condivisione file di terze parti o la configurazione di un server dedicato. Firebase App Distribution risolve questi problemi: un repository unificato di build su Google Cloud, notifiche automatiche ai tester, gestione centralizzata degli accessi e feedback integrato tramite Firebase Crashlytics. Il servizio è indispensabile per i team che praticano CI/CD e rilasci regolari: un nuovo build è disponibile per i tester entro un minuto dal caricamento.

Formati di build supportati

App Distribution supporta tutti i formati di build standard per piattaforme mobili. Per Android — APK e Android App Bundle (AAB) con generazione automatica di APK da AAB durante l'installazione. Per iOS — file IPA per distribuzione ad-hoc, sviluppo e enterprise. Ogni build è accompagnata da note di rilascio, numero di versione e codice build per il tracciamento. La dimensione massima del file caricato è di 500 MB e i build vengono conservati per 150 giorni.

Caricamento dei build e gestione delle versioni

Il caricamento dei build in Firebase App Distribution viene effettuato tramite Firebase Console, CLI (firebase appdistribution:distribute) o strumenti automatizzati come Fastlane e Gradle. Durante il caricamento, si specifica la versione del build, le note di rilascio e l'elenco dei tester o dei gruppi che devono ricevere una notifica. Firebase assegna automaticamente un identificatore univoco al build e lo rende disponibile per l'installazione tramite un link.

Gestione delle versioni tramite Firebase Console

Firebase Console fornisce un'interfaccia web per il caricamento dei build e la gestione delle versioni. La console mostra la cronologia di tutti i build caricati con data, versione, stato e numero di installazioni. Uno sviluppatore può disabilitare una versione specifica se viene trovato un bug critico — questo bloccherà l'installazione di quella versione per tutti i tester. La console mostra anche un grafico delle installazioni per giorno, aiutando a monitorare l'attività di test.

Caricamento automatico tramite Firebase CLI

Firebase CLI consente di caricare build con un singolo comando, comodo per l'integrazione nelle pipeline CI/CD. Il comando distribute accetta un percorso file, un token di accesso al progetto, un elenco di gruppi di tester e note di rilascio opzionali. L'autenticazione utilizza un account di servizio Firebase con il ruolo di Amministratore Firebase App Distribution. La CLI supporta build sia Android che iOS, rilevando automaticamente la piattaforma dall'estensione del file.

bash
# Caricamento di un build tramite Firebase CLI
firebase appdistribution:distribute \
    app-release.apk \
    --app 1:123456789:android:abc123def456 \
    --groups "qa-team,product-owners" \
    --release-notes "Bug di autorizzazione corretto" \
    --token "FIREBASE_TOKEN"

Gestione di tester e gruppi

Firebase App Distribution fornisce un sistema flessibile di gestione dei tester: puoi aggiungere partecipanti via email, creare gruppi per ruoli o progetti e assegnare build diversi a gruppi diversi. Quando un nuovo tester viene aggiunto, il sistema gli invia un'email di invito con le istruzioni per installare l'applicazione. I tester ricevono notifiche automatiche per ogni nuovo build assegnato al loro gruppo.

Creazione di gruppi di tester

I gruppi consentono di organizzare i tester funzionalmente. Esempi di gruppi: Team QA (accesso completo a tutti i build), Product Owners (accesso ai build stabili), Tester Esterni (accesso limitato per beta tester esterni). Un singolo tester può appartenere a più gruppi. Durante il caricamento di un build, lo sviluppatore seleziona i gruppi target — solo i membri dei gruppi selezionati ricevono notifiche, eliminando il rumore informativo.

Aggiunta di tester tramite API

Per aggiungere tester tramite programmazione, viene utilizzata l'API Firebase App Distribution. L'API consente di creare tester, aggiungerli ai gruppi e cancellarli quando necessario. Questo è comodo per l'integrazione con sistemi interni di gestione dei test e tracker di bug. Quando un tester viene aggiunto tramite API, riceve anche un'email di invito con un link per installare la prima applicazione.

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 aggiunto al gruppo")
    } catch (error) {
        console.error("Errore:", error)
    }
}

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

Distribuzione dei build Android

La distribuzione dei build Android tramite Firebase App Distribution supporta due formati: APK e Android App Bundle (AAB). Quando si carica un AAB, Firebase genera automaticamente un APK compatibile con il dispositivo del tester utilizzando Google Play App Signing. I tester installano l'applicazione tramite un link diretto — non hanno bisogno di accedere a Google Play Console, né di essere aggiunti come tester in Play Console. Questo semplifica notevolmente il processo di beta testing per Android.

Requisiti per i build Android

Per installare tramite App Distribution, i tester devono abilitare l'installazione da fonti sconosciute sul proprio dispositivo. Firebase genera automaticamente un link a una pagina web con un pulsante di installazione APK. Per il formato AAB, il dispositivo deve supportare Play Core Library e avere Google Play Store installato. Firebase raccomanda di utilizzare AAB per le versioni finali e APK per iterazioni rapide.

Configurazione Gradle per App Distribution

Il plugin Firebase App Distribution per Gradle consente di inviare build direttamente da un'attività Gradle. La configurazione include l'aggiunta del plugin com.google.firebase.appdistribution, la configurazione di un account di servizio e la definizione dei gruppi target. Dopo la configurazione, l'attività assembleDistRelease compilerà l'applicazione e la caricherà su Firebase App Distribution con un singolo 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 automatico"
}

Distribuzione dei build iOS

La distribuzione dei build iOS tramite Firebase App Distribution richiede una configurazione aggiuntiva perché Apple limita l'installazione di applicazioni al di fuori dell'App Store. Per distribuire applicazioni iOS, è necessario utilizzare certificati ad-hoc o enterprise del programma Apple Developer. I tester devono essere aggiunti al Portale Sviluppatori Apple come dispositivi per la distribuzione ad-hoc, oppure utilizzare la distribuzione enterprise senza limiti di dispositivi.

Configurazione della distribuzione ad-hoc

Per la distribuzione ad-hoc, è necessario raccogliere gli UDID di tutti i dispositivi dei tester e aggiungerli al Portale Sviluppatori Apple. Firebase App Distribution mostra ai tester le istruzioni per trovare il proprio UDID e salva automaticamente i dispositivi registrati. Dopo aver aggiunto l'UDID al profilo di provisioning e compilato l'IPA, i tester ricevono un link di installazione. Firebase raccomanda di utilizzare un certificato enterprise per progetti con un grande numero di tester, poiché l'ad-hoc è limitato a 100 dispositivi per account.

Compilazione IPA tramite Fastlane

Fastlane è lo strumento consigliato per automatizzare la compilazione di applicazioni iOS. La lane match gestisce i certificati e i profili di provisioning, mentre la lane sigh crea un IPA per la distribuzione. Firebase App Distribution si integra con Fastlane tramite il plugin firebase_app_distribution, che carica l'IPA e notifica i tester. Fastlane supporta anche la gestione delle versioni e le note di rilascio tramite plugin aggiuntivi.

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: "Build del #\{Time.now.strftime
            ('%Y-%m-%d %H:%M')}"
    )
end

Integrazione con CI/CD e Fastlane

L'integrazione completa di Firebase App Distribution con CI/CD consente di pubblicare automaticamente nuovi build a ogni commit nel repository. Configurando una pipeline CI, il team riceve feedback istantaneo dai tester pochi minuti dopo un push di codice. App Distribution supporta tutti i sistemi CI popolari: GitHub Actions, GitLab CI, Jenkins, Bitrise e CircleCI. Ogni piattaforma richiede la propria configurazione, ma il principio generale è lo stesso: compilare → caricare → notificare.

Configurazione tramite GitHub Actions

GitHub Actions consente di configurare la distribuzione automatica dei build al push sul ramo develop o alla creazione di una pull request. Il workflow include l'installazione di Java/Flutter/Node.js, la compilazione dell'applicazione, l'autenticazione tramite un account di servizio Firebase e l'esecuzione della Firebase CLI con il comando distribute. I segreti (token, account di servizio) sono memorizzati in GitHub Secrets e non vengono esposti nei log di build. Per iOS, sono ulteriormente richiesti la configurazione di Xcode e l'installazione di Fastlane nel 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

Raccolta di feedback

Firebase App Distribution si integra con Firebase Crashlytics per la raccolta automatica di rapporti di crash dai tester. Crashlytics collega automaticamente un crash a una versione di build e un dispositivo specifici, aiutando a localizzare e correggere rapidamente il problema. I tester possono anche inviare screenshot e commenti tramite l'interfaccia web di App Distribution, ricevendo un link al modulo di feedback dopo l'installazione del build.

Domande frequenti

Qual è la differenza tra App Distribution e TestFlight?

Firebase App Distribution è un servizio multipiattaforma (Android + iOS), a differenza di TestFlight che funziona solo per iOS. App Distribution si integra anche con Crashlytics e Firebase Analytics, fornendo un ecosistema unificato per il beta testing su entrambe le piattaforme.

Per quanto tempo vengono conservati i build in App Distribution?

I build vengono conservati per 150 giorni dalla data di caricamento. Dopo questo periodo, vengono eliminati automaticamente. Si consiglia di caricare regolarmente nuovi build ed eliminare manualmente quelli obsoleti tramite Firebase Console per evitare che i tester installino versioni vecchie.

Quanti tester possono essere aggiunti?

Non c'è limite al numero di tester in Firebase App Distribution. Per la distribuzione ad-hoc iOS, si applica il limite Apple di 100 dispositivi per account. Per la distribuzione enterprise Android e iOS, non ci sono restrizioni sul numero di tester.

Posso caricare AAB invece di APK per Android?

, App Distribution supporta AAB (Android App Bundle). Firebase genera automaticamente un APK dall'AAB per ogni dispositivo del tester utilizzando Google Play App Signing. Questo è particolarmente comodo per testare prima della pubblicazione su Play Store.

Firebase App Distribution è gratuito?

, App Distribution è incluso nel piano gratuito Spark di Firebase. Limiti del piano Spark: fino a 500 tester e 25.000 installazioni al mese per progetto. Il piano Blaze rimuove questi limiti e aggiunge supporto prioritario.

Riepilogo

  • Firebase App Distribution è un servizio per distribuire build beta di applicazioni mobili con supporto per Android (APK/AAB) e iOS (IPA) senza pubblicare negli store.
  • Gestione dei tester — un sistema flessibile di gruppi con notifiche automatiche via email e push a ogni nuovo build.
  • Caricamento dei build tramite Firebase Console, CLI, plugin Gradle o Fastlane con notifica automatica ai tester.
  • Build Android supportano APK e AAB con generazione automatica di APK da AAB, installazione tramite link diretto senza Google Play Console.
  • Build iOS richiedono un certificato ad-hoc o enterprise Apple, con registrazione UDID e supporto Fastlane per l'automazione della compilazione IPA.
  • Integrazione CI/CD — GitHub Actions, GitLab CI, Jenkins, Bitrise con Firebase CLI o Fastlane per pubblicazione automatica a ogni push.
  • Gratuito fino a 500 tester e 25.000 installazioni al mese, build conservati per 150 giorni, integrato con Firebase Crashlytics per la raccolta di rapporti di crash.

Svilupperemo un'applicazione mobile chiavi in mano

IT Sectr crea applicazioni iOS e Android per startup e aziende dal 2017. Ti consulteremo e ti proporremo la soluzione migliore.

Discuti il progetto

Leggi anche