Distribuisci le app per Android ai tester utilizzando l'interfaccia a riga di comando di Firebase


Questa guida descrive come distribuire gli Android App Bundle (AAB) ai tester utilizzando la CLI Firebase. Lo strumento dell'interfaccia a riga di comando consente di specificare tester e note di rilascio per una build, quindi distribuisce la build di conseguenza.

App Distribution si integra con il servizio di condivisione interna delle app di Google Play per elaborare gli AAB caricati e pubblicare APK ottimizzati per le configurazioni dei dispositivi dei tester. La distribuzione degli AAB ti consente di:

  • Esegui APK ottimizzati (pubblicati da Google Play) ottimizzati per i dispositivi dei tuoi tester.

  • Individua ed esegui il debug di problemi specifici del dispositivo.

  • Testa le funzionalità degli app bundle come Play Feature Delivery e Play Asset Delivery.

  • Riduci le dimensioni dei download per i tester.

Autorizzazioni obbligatorie

Per caricare AAB su App Distribution, devi collegare la tua app Firebase a un'app in Google Play. Per eseguire queste azioni, devi disporre del livello di accesso richiesto.

Se non disponi dell'accesso Firebase necessario, puoi chiedere a un proprietario del progetto Firebase di assegnarti il ruolo applicabile tramite le impostazioni IAM della console Firebase. Se hai domande sull'accesso al tuo progetto Firebase, inclusa la ricerca o l'assegnazione di un proprietario, consulta le domande frequenti "Autorizzazioni e accesso ai progetti Firebase".

La tabella seguente si applica al collegamento di un'app Firebase a un'app in Google Play, nonché al caricamento di AAB.

Azione nella console Firebase Autorizzazione IAM richiesta Ruoli IAM che includono le autorizzazioni richieste per impostazione predefinita Ruoli aggiuntivi obbligatori
Collegare un'app Firebase a un'app in Google Play firebase.playLinks.update Uno dei seguenti ruoli: Accedere a un account sviluppatore Google Play come amministratore
Carica gli AAB su App Distribution firebaseappdistro.releases.update Uno dei seguenti ruoli: ––

Prima di iniziare

  1. Se non lo hai già fatto, aggiungi Firebase al tuo progetto Android. Al termine di questo flusso di lavoro, disporrai di un'app Firebase per Android nel tuo progetto Firebase.

    Se non utilizzi altri prodotti Firebase, devi solo creare un progetto e registrare la tua app. Se decidi di utilizzare altri prodotti, assicurati di completare tutti i passaggi descritti in Aggiungere Firebase al progetto Android.

  2. Per creare un collegamento da Firebase a Google Play e caricare AAB, assicurati che la tua app soddisfi i seguenti requisiti:

    • L'app in Google Play e l'app Firebase per Android sono entrambe registrate con lo stesso nome di pacchetto.

    • L'app in Google Play viene configurata nella dashboard dell'app e distribuita a uno dei canali Google Play (test interno, chiuso, aperto o produzione).

    • La revisione dell'app in Google Play è stata completata e l'app pubblicata. La tua app è stata pubblicata se la colonna Stato app mostra uno dei seguenti stati: Test interni (non Test interni in bozza), Test chiusi, Test aperti o Produzione.

  3. Collega l'app Firebase per Android al tuo account sviluppatore Google Play:

    1. Nella console Firebase, vai a Impostazioni progetto, quindi seleziona la scheda Integrazioni.

    2. Nella scheda Google Play, fai clic su Collega.
      Se hai già dei collegamenti a Google Play, fai clic su Gestisci.

    3. Segui le istruzioni sullo schermo per attivare l'integrazione di App Distribution e selezionare le app Firebase per Android da collegare a Google Play.

    Scopri di più sul collegamento a Google Play.

Passaggio 1: Crea la tua app

Quando è tutto pronto per distribuire una versione di pre-release della tua app ai tester, crea il tuo AAB (consulta la documentazione di Android Studio per istruzioni).

Passaggio 2: Distribuire l'app ai tester

Per distribuire l'app ai tester, carica il file dell'app utilizzando la CLI Firebase:

  1. Installa o esegui l'upgrade all'ultima versione dell'interfaccia a riga di comando Firebase (consigliamo di scaricare il file binario autonomo per l'interfaccia a riga di comando specifica per il tuo sistema operativo). Assicurati di accedere e di verificare di poter accedere ai tuoi progetti.
  2. Nella pagina App Distribution della console Firebase, seleziona l'app che vuoi distribuire e poi fai clic su Inizia.
  3. Esegui il comando appdistribution:distribute per caricare l'app e distribuirla ai tester. Utilizza i seguenti parametri per configurare la distribuzione:

    opzioni appdistribution:distribute
    --app

    Obbligatorio: l'ID app Firebase della tua app. Puoi trovare l'ID app nella console Firebase, nella pagina Impostazioni generali.

    --app 1:1234567890:android:0a1b2c3d4e5f67890
    --token

    Un token di aggiornamento che viene stampato quando autentichi il tuo ambiente CI con l'interfaccia a riga di comando Firebase. Per saperne di più, leggi Utilizzare l'interfaccia a riga di comando con sistemi CI .

    --token "$FIREBASE_TOKEN"
    --release-notes
    --release-notes-file

    Note di rilascio per questa build.

    Puoi specificare direttamente le note di rilascio:

    --release-notes "Text of release notes"

    In alternativa, specifica il percorso di un file di testo normale:

    --release-notes-file "/path/to/release-notes.txt"
    --testers
    --testers-file

    Gli indirizzi email dei tester che vuoi invitare.

    Puoi specificare i tester come elenco di indirizzi email separati da virgole:

    --testers "ali@example.com, bri@example.com, cal@example.com"

    In alternativa, puoi specificare il percorso di un file di testo normale contenente un elenco di indirizzi email separati da virgole:

    --testers-file "/path/to/testers.txt"
    --groups
    --groups-file

    I gruppi di tester che vuoi invitare (consulta Gestire i tester). I gruppi vengono specificati utilizzando gli alias di gruppo, che puoi cercare nella console Firebase.

    Puoi specificare i gruppi sotto forma di elenco separato da virgole:

    --groups "qa-team, trusted-testers"

    In alternativa, puoi specificare il percorso di un file di testo normale contenente un elenco di nomi di gruppi separati da virgole:

    --groups-file "/path/to/groups.txt"
    --debug

    Un flag che puoi includere per stampare l'output di log dettagliato.

    --test-devices
    --test-devices-file

    I seguenti tipi di distribuzione fanno parte della funzionalità beta del tester automatico.

    I dispositivi di test a cui vuoi distribuire le build (consulta Test automatici).

    Puoi specificare i tester come elenco di indirizzi email separati da virgole:

    --test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"

    In alternativa, puoi specificare il percorso di un file di testo normale contenente un elenco separato da punti e virgola dei dispositivi di test:

    --test-devices-file: "/path/to/test-devices.txt"
    --test-username

    Il nome utente per l'accesso automatico da utilizzare durante i test automatici.

    --test-password
    --test-password-file

    La password per l'accesso automatico da utilizzare durante i test automatici.

    In alternativa, puoi specificare il percorso di un file di testo normale contenente una password:

    --test-password-file: "/path/to/test-password.txt"
    --test-username-resource

    Nome della risorsa per il campo del nome utente per l'accesso automatico da utilizzare durante i test automatici.

    --test-password-resource

    Nome della risorsa per il campo password per l'accesso automatico da utilizzare durante i test automatici.

    --test-non-blocking

    Esegui test automatici in modo asincrono. Per i risultati dei test automatici, visita la Console Firebase.

    Ad esempio:

    firebase appdistribution:distribute test.aab  \
        --app 1:1234567890:android:0a1b2c3d4e5f67890  \
        --release-notes "Bug fixes and improvements" --testers-file testers.txt

    L'interfaccia a riga di comando di Firebase genera i seguenti link dopo il caricamento della release. Questi link ti aiutano a gestire i programmi binari e ad assicurare che i tester e altri sviluppatori dispongano della release corretta:

    • firebase_console_uri: un link alla console Firebase che mostra una singola release. Puoi condividere questo link con altri sviluppatori della tua organizzazione.
    • testing_uri: un link alla release nell'esperienza del tester (app nativa per Android) che consente ai tester di visualizzare le note di release e installare l'app sul proprio dispositivo. Il tester deve avere accesso alla release per utilizzare il link.
    • binary_download_uri: un link firmato che scarica e installa direttamente il file binario dell'app (file APK o AAB). Il link scade dopo un'ora.

    Gestire tester e gruppi

    Oltre a distribuire le release, puoi anche utilizzare appdistribution:testers:add e appdistribution:testers:remove per invitare nuovi tester o rimuovere quelli esistenti dal tuo progetto Firebase.

    Dopo aver aggiunto un tester al progetto Firebase, puoi aggiungerlo a singole release. Una volta rimosso, un tester non avrà più accesso alle release nel tuo progetto. Tieni presente che i tester rimossi di recente possono comunque mantenere l'accesso alle tue release per un determinato periodo di tempo.

    Ad esempio:

    firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com

    Gli indirizzi email dei tester devono essere separati da uno spazio. Puoi anche specificare i tester utilizzando --file /path/to/testers.txt.

    Se hai un numero elevato di tester, ti consigliamo di utilizzare i gruppi: Puoi utilizzare appdistribution:group:create e appdistribution:group:delete per creare o eliminare gruppi nel tuo progetto Firebase.

    Utilizza --group-alias per specificare un gruppo per i comandi appdistribution:testers:add e appdistribution:testers:remove.

    Ad esempio:

    firebase appdistribution:group:create "QA team" qa-team
    
    firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:group:delete qa-team

Una volta distribuita, la build diventa disponibile nella dashboard App Distribution della console Firebase per 150 giorni (cinque mesi). Quando manca 1 mese alla scadenza della build, viene visualizzata una notifica di scadenza sia nella console sia nell'elenco delle build del tester sul suo dispositivo di test.

I tester che non sono stati invitati a testare l'app ricevono inviti via email per iniziare, mentre i tester esistenti ricevono notifiche via email che indicano che una nuova build è pronta per il test (leggi la guida alla configurazione dei tester per istruzioni su come installare l'app di test). Puoi monitorare lo stato di ciascun tester, se ha accettato l'invito e se ha scaricato l'app, nella console Firebase.

I tester hanno 30 giorni di tempo per accettare un invito a testare l'app prima che scada. Quando manca 1 settimana alla scadenza di un invito, nella console Firebase viene visualizzata una notifica di scadenza accanto al tester di una release. Un invito può essere rinnovato inviandolo di nuovo utilizzando il menu a discesa nella riga del tester.

Passaggi successivi