Questa guida descrive come distribuire gli APK ai tester utilizzando la CLI Firebase. Lo strumento CLI ti consente di specificare i tester e le note di rilascio per una build, quindi la distribuisce di conseguenza.
Prima di iniziare
Se non lo hai già fatto, aggiungi Firebase al tuo progetto Android.
Se non utilizzi altri prodotti Firebase, devi solo creare un progetto e registrare la tua app. Tuttavia, se decidi di utilizzare altri prodotti in futuro, assicurati di completare tutti i passaggi nella pagina collegata sopra.
Passaggio 1: Crea la tua app
Quando è tutto pronto per distribuire una versione pre-release della tua app ai tester, compila l'APK utilizzando la normale procedura. Devi firmare l'APK con la chiave di debug o la chiave di firma dell'app.
Passaggio 2: Distribuire l'app ai tester
Per distribuire l'app ai tester, carica il file dell'app utilizzando la CLI Firebase:
- Installa o esegui l'upgrade alla versione più recente 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.
- Nella pagina App Distribution della console Firebase, seleziona l'app che vuoi distribuire e poi fai clic su Inizia.
-
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 dell'app nella console Firebase, nella pagina Impostazioni generali.
--app 1:1234567890:android:0a1b2c3d4e5f67890
--token
Un token di aggiornamento stampato quando autentichi il tuo ambiente CI con l'interfaccia a riga di comando Firebase (leggi Utilizzare l'interfaccia a riga di comando con i sistemi di CI per saperne di più).
--token "$FIREBASE_TOKEN"
--release-notes
--release-notes-file
Note di rilascio per questa build.
Puoi specificare le note di rilascio direttamente:
--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 come 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 del 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 di dispositivi di test separati da due punti:
--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 della 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.apk \ --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 file binari e a garantire che i tester e gli altri sviluppatori abbiano la 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
eappdistribution:testers:remove
per invitare nuovi tester o rimuovere quelli esistenti dal tuo progetto Firebase.Una volta aggiunto un tester al progetto Firebase, puoi aggiungerlo alle singole release. Una volta rimosso, un tester non avrà più accesso alle release del 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
eappdistribution:group:delete
per creare o eliminare gruppi nel tuo progetto Firebase.Utilizza
--group-alias
per specificare un gruppo per i comandiappdistribution:testers:add
eappdistribution: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 e i tester esistenti ricevono notifiche via email che li informano che una nuova build è pronta per il test (leggi la guida alla configurazione per i 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
Implementa il feedback in-app per consentire ai tester di inviare facilmente feedback sulla tua app (inclusi screenshot).
Scopri come mostrare avvisi in-app ai tester quando sono disponibili nuove build dell'app da installare.
Scopri le best practice per distribuire le app per Android ai tester QA utilizzando CI/CD.