Aggiunta della tua app web progressiva a Google Play

1. Ti diamo il benvenuto

In questo lab acquisirai un'app web progressiva esistente di cui hai eseguito il deployment e la riunirai in un'app per la distribuzione nel Play Store di Google.

Obiettivi didattici

  • Come utilizzare Bubblewrap per pacchettizzare la tua app web progressiva per il Play Store di Google
  • Che cos'è una chiave di firma e come utilizzarla
  • Come creare una nuova app in Play Console e configurare una release di test per testare la tua app prima della pubblicazione
  • Che cosa sono i link di asset digitali e come aggiungerli alla tua app web

Che cosa devi sapere

Che cosa ti serve

Che cosa non verrà coperto

2. Aggrega la tua PWA

Bubblewrap è uno strumento che consente di raggruppare la tua app web progressiva in un Android App Bundle con un paio di comandi dell'interfaccia a riga di comando. A tale scopo, genera un progetto Android che avvia la PWA come Attività web attendibile.

Per iniziare, crea una directory in cui inserire il tuo progetto e spostarlo:

$ mkdir my-pwa && cd my-pwa

Dopodiché, esegui lo strumento a riga di comando Bubblewrap per generare la configurazione e il progetto Android per l'Android App Bundle che caricherai su Google Play:

$ bubblewrap init --manifest=https://my-pwa.com/manifest.json

In questo caso, il fumetto viene inizializzato con il percorso del file Web App Manifest di PWA. Verrà generata una configurazione predefinita dal file manifest web app e verrà avviata una procedura guidata all'interno della console che ti consentirà di modificare la configurazione predefinita. Segui la procedura guidata per modificare qualsiasi valore generato dallo strumento.

Procedura guidata dell'interfaccia a riga di comando Bubblewrap che mostra un'inizializzazione da airhorn con il dominio sostituito con example,.com e gli URL di avvio sostituiti.

Chiave di firma

Il Play Store di Google richiede la firma digitale dei pacchetti dell'applicazione con un certificato al momento del caricamento, spesso indicato come chiave di firma. Si tratta di un certificato autofirmato ed è diverso da quello utilizzato per gestire la tua applicazione tramite HTTPS.

Durante la creazione dell'applicazione, Bubblewrap chiederà il percorso della chiave. Se utilizzi una scheda del Play Store esistente per la tua applicazione, dovrai aggiungere il percorso alla stessa chiave utilizzata dalla scheda.

Procedura guidata dell'interfaccia a riga di comando di Bubblewrap che richiede la posizione della posizione e del nome della chiave di firma esistente dell'utente.

Se non disponi di una chiave di firma esistente e stai creando una nuova scheda nel Play Store, puoi utilizzare il valore predefinito fornito da Bubblewrap per creare una nuova chiave per te:

Procedura guidata dell'interfaccia a riga di comando di Bubblewrap che chiede se l'utente vuole creare una nuova chiave di firma.

Output Bubblewrap

Dopo aver inizializzato il progetto Bubblewrap e completato la procedura guidata, verranno creati i seguenti elementi:

  • twa-manifest.json: la configurazione del progetto che riflette i valori scelti nella procedura guidata Bubblewrap. Dovrai monitorare questo file con il sistema di controllo della versione, poiché può essere utilizzato per rigenerare l'intero progetto Bubblewrap, se necessario.
  • File di progetto Android: i file rimanenti nella directory sono il progetto Android generato. Questo progetto è l'origine utilizzata per il comando di creazione Bubblewrap. Facoltativamente, puoi monitorare questi file anche con il sistema di controllo della versione.
  • (Facoltativo) Chiave di firma: se decidi di far creare la chiave di firma a bolle, la chiave verrà generata nella posizione descritta nella procedura guidata. Assicurati che la chiave sia conservata in un luogo sicuro e limita il numero di persone che vi hanno accesso; viene usata per dimostrare che le app sul Play Store provengono da te.

Con questi file, abbiamo tutto ciò che serve per creare un Android Application Bundle.

Crea il tuo Android App Bundle

Dalla stessa directory in cui hai eseguito il comando di inizializzazione di Bubblewrap, esegui il comando seguente (devi inserire le password per la chiave di firma):

$ bubblewrap build

Output dell'interfaccia a riga di comando Bubblewrap per la creazione di un progetto, che chiede le password per la chiave di firma e mostra la generazione di diverse versioni dell'applicazione Android.

Il comando build genererà due file importanti:

  • app-release-bundle.aab: il tuo Android App Bundle di PWA. Questo è il file che caricherai sul Google Play Store.
  • app-release-sign.apk: un formato di pacchetti Android che può essere utilizzato per installare l'applicazione direttamente su un dispositivo di sviluppo utilizzando il comando bubblewrap install.

3. Mettiti alla prova - Bubblewrap

Ora tocca a voi! Utilizzando quanto appreso nel passaggio precedente, prova a eseguire la seguente procedura:

  1. Crea una directory in cui inserire il tuo progetto Android generato.
  2. Inizializza la directory con il fumetto e il file manifest dell'app web PWA.
  3. Genera una nuova chiave di firma o riutilizza quella esistente se ne hai una.
  4. Crea il tuo Android App Bundle dal progetto Android generato.

4. Aggiunta della tua app al Play Store di Google

Ora che disponi di un Android App Bundle per la tua PWA, è il momento di caricarlo nel Play Store di Google. Dopo aver registrato l'account sviluppatore, puoi aprire Play Console per eseguire l'accesso e iniziare.

Crea un'app

Una volta eseguito l'accesso, verrà visualizzata una schermata in cui sono visualizzate tutte le tue app. Nella parte superiore è presente un pulsante Crea app che, se selezionato, mostra la seguente schermata che ti guida nella creazione della nuova scheda dell'app Android.

Schermata che mostra il modulo Crea app di Play Console.

Sono presenti diversi campi da compilare, tra cui il nome dell'app, la lingua predefinita, se è un'app o un gioco, se è senza costi o a pagamento e una serie di dichiarazioni. Non potrai creare un'app senza accettare le dichiarazioni, quindi è importante leggerle e comprenderle prima di accettarle.

Dopo aver compilato tutte le informazioni e aver fatto clic sul pulsante Crea app nella parte inferiore del modulo, verrai indirizzato alla dashboard della tua nuova app. Nella dashboard troverai elenchi di controllo delle attività che devi completare per configurare, iniziare a testare e rilasciare la tua app.

Configura test interni

I test interni sono un ottimo metodo per rilasciare rapidamente la tua app senza revisione per un gruppo di trusted tester selezionati. Visualizza le attività nell'elenco di controllo Inizia il test adesso e seleziona Seleziona tester.

Inizia l'elenco di controllo ora per il test

Viene visualizzata la pagina Test interni. Qui puoi gestire la configurazione dei test per la tua app. Puoi accedere nuovamente alla sezione Test dal menu Release nella barra laterale. La prima cosa da fare qui è creare una mailing list di tester per testare la tua app. A tale scopo, fai clic sul link Crea mailing list nella sezione Tester della pagina. Si aprirà un popup in cui puoi creare la mailing list.

Popup che mostra il modulo di creazione di una mailing list, che include il nome della lista, gli indirizzi email, un link per caricare un file CSV di indirizzi email e un'area per mostrare quali indirizzi sono stati caricati.

In questo popup, potrai assegnare un nome alla mailing list e puoi inserire manualmente gli indirizzi email o caricare un file CSV di indirizzi da utilizzare. Al termine, premi il pulsante Salva modifiche. Puoi tornare alle mailing list che hai già creato per aggiungere o rimuovere indirizzi email in base alle tue esigenze. Dopo aver aggiunto i tester, è il momento di creare una release di test. Fai clic sul pulsante Crea nuova release nella parte superiore della pagina.

Pagina di test interno con una freccia che punta sul pulsante Crea nuova release.

Crea una release di test

Dopo aver fatto clic sul pulsante Crea nuova release, ti verrà chiesto di aprire una serie di sezioni. La prima, Integrità dell'app, ti consente di scegliere come gestire la chiave di firma della tua app. L'opzione predefinita è consentire a Google di gestire la chiave di firma ed è l'opzione consigliata perché è sicura e garantisce il recupero dell'app in caso di perdita della chiave di caricamento.

Firma dell'app di Google Play

Un diagramma di flusso che mostra, da sinistra a destra, uno sviluppatore e la sua chiave di caricamento, che firma la sua app e la invia a Google. Google ha una chiave di firma dell'app e firma l'app con quella chiave, quindi la invia all'utente

Caricamento e finalizzazione app

Dopo aver scelto come gestire la chiave di firma, ti verrà chiesto di caricare l'app bundle nella release. Per farlo, trascina il file app-release-bundle.aab che Bubblewrap ha generato nel modulo. Per finalizzare la release, compila i restanti dettagli della release e fai clic su Salva, quindi su Controllo della release e infine sui pulsanti Inizia implementazione per test interni per iniziare la release. In questo modo la tua app sarà disponibile per i tester interni. Torna alla scheda Tester della pagina Test interni e puoi copiare un link da condividere con i tester in modo che possano accedere all'app.

Pagina di test interno, con una freccia che punta al link di copia per condividere un link di test con i tester.

5. Mettiti alla prova - Crea un'app

Ora tocca a voi! Utilizzando quanto appreso nel passaggio precedente, prova a eseguire la seguente procedura:

  1. Crea una nuova app per la tua PWA in Play Console.
  2. Configurare test interni per l'app e aggiungerti come tester.
  3. Carica l'app bundle e crea una release di test per l'app.
  4. Installa l'app dal Play Store sul tuo dispositivo Android o Chrome OS utilizzando il link di test.

6. Digital Asset Links

Se hai eseguito il test della PWA su Google Play, potresti notare che non viene visualizzata a schermo intero. Questo perché non hai ancora verificato la proprietà del sito tramite un file Digital Asset Links. Bubblewrap è in grado di configurare e creare il tuo bundle di applicazioni Android, ma devi completare il collegamento aggiornando l'applicazione web.

Ottieni l'impronta SHA-256 della tua app

Per configurare i Digital Asset Links per PWA, devi disporre dell'impronta SHA-256 per il certificato utilizzato per firmare il pacco che l'utente riceve sul telefono.

Con la funzionalità firma dell'app di Google Play

Se hai configurato la funzionalità firma dell'app di Google Play per la tua app al momento della creazione della release (opzione consigliata in precedenza), la versione dell'impronta SHA-256 è disponibile in Play Console. Ricorda che questo certificato è diverso da quello utilizzato per caricare la tua applicazione. Per recuperare l'impronta, vai all'interno dell'applicazione in Play Console, quindi vai a Release->Configurazione->Integrità dell'app. Vedrai una serie di opzioni nella sezione Certificato della chiave di firma dell'app. Copia il valore dell'impronta digitale del certificato SHA-256.

Schermata Integrità dell'app in cui è evidenziata l'impronta digitale del certificato SHA-256.

Senza la funzionalità firma dell'app di Google Play

Se hai disattivato la firma dell'app di Google Play, la chiave usata per firmare l'applicazione finale sarà la stessa che usi per caricare l'applicazione in Play Console. Puoi utilizzare keytool di Java per estrarre l'impronta:

$ keytool -list -v \
    -keystore <keystore-file-path> \
    -alias <key-alias> \
    -keypass <key-password> \
    -storepass <store-password> | grep SHA256

$     SHA256: BD:92:64:B0:1A:B9:08:08:FC:FE:7F:94:B2...

Per utilizzarlo, devi conoscere il percorso della chiave di firma e le password pertinenti. Copia i valori esadecimali della chiave SHA256.

Bubblewrap può gestire le impronte digitali firmate e generare il file Digital Asset Links corretto per te. Per aggiungere un'impronta con Bubblewrap, esegui il comando seguente all'interno della stessa directory creata durante l'operazione Bubblewrapping della tua PWA, sostituendo <fingerprint> con l'impronta copiata dal passaggio precedente.

$ bubblewrap fingerprint add <fingerprint>

Questo comando aggiungerà l'impronta all'elenco delle impronte dell'applicazione e genererà un file assetlinks.json. Carica questo file nella directory .well-known sulla stessa origine della tua PWA.

7. Mettiti alla prova - Link a risorse digitali

Ora tocca a voi! Utilizzando quanto appreso nel passaggio precedente, prova a eseguire la seguente procedura:

  1. Trova l'impronta SHA-256 della tua app.
  2. Genera un file Digital Asset Links per la tua app.
  3. Carica il file Digital Asset Links alla tua PWA.
  4. Verifica che il file Digital Asset Links sia configurato correttamente utilizzando l'API e l'app di test.

8. Testa le tue conoscenze

Prima di terminare, verifica le tue conoscenze e scopri ciò che hai appreso rispondendo alle domande seguenti. Non dare un'occhiata alle risposte.

Dopo aver generato il suo progetto Android con Bubblewrap, Sara esegue il commit del file ______ generato nel suo sistema di controllo della versione in modo che possa ricrearlo in qualsiasi momento.

twa-manifest.json chiave di firma app-release-bundle.aab build.gradle

Giacomo vorrebbe che il suo team addetto al QA provasse la sua app Android PWA. _________________________!

upload build e caricamenti release firma e caricamenti chiave di caricamento, /.well-known/assetlinks.json chiave di caricamento, /assetlinks.json chiave di firma, /.well-known/assetlinks.json chiave di firma, /assetlinks.json

9. Verifica le tue conoscenze - Risposte

Risposte alle domande per verificare le tue conoscenze!

  1. Dopo aver generato il suo progetto Android con Bubblewrap, Sara esegue il commit del file ______ generato nel suo sistema di controllo della versione in modo che possa ricrearlo in qualsiasi momento.
  2. Giacomo vorrebbe che il suo team addetto al QA provasse la sua app Android PWA. _________________________!
  3. L'app Android progressiva PWA di Oogie Boogie non è in modalità a schermo intero. Per risolvere il problema, ricevono l'impronta digitale del certificato SHA-256 per ______ e lo caricano nel file Digital Asset Links all'indirizzo ___ nella stessa origine della PWA.

10. Complimenti!

Complimenti! Hai imparato ad aggiungere la tua PWA al Play Store di Google.

Quando te la senti, prova a seguire questi passaggi in autonomia:

Buona programmazione!