Pubblica la tua app Lightbuild

Per pubblicare la tua app su Google Play, crea una versione di release dell'app come Android App Bundle, firmala con la chiave di caricamento e caricala su Play Console. Questa pagina mostra come configurare la firma della release in un progetto Lightbuild e creare un app bundle firmato con l'interfaccia a riga di comando Lightbuild.

Creare una chiave di caricamento

Google Play utilizza la firma dell'app di Google Play per firmare gli APK che mette a disposizione degli utenti, mentre tu firmi gli app bundle che carichi con una chiave di caricamento. Se non hai ancora una chiave di caricamento, creane una con keytool, che è inclusa nel JDK:

keytool -genkey -v -keystore upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload

Il comando ti chiede le password per l'archivio chiavi e la chiave, quindi crea un file dell'archivio chiavi denominato upload-keystore.jks nella directory corrente. Archivia il keystore in una posizione sicura all'esterno del progetto e non inserirlo nel controllo della versione. Per ulteriori informazioni, vedi Firma l'app.

Configura la firma della release

Nel file lightbuild.yaml del modulo dell'app, aggiungi un blocco signing al profilo release in packaging. Anziché scrivere le password nel file, fai riferimento alle variabili di ambiente con la sintassi ${NAME}:

android:
  packaging:
    release:
      signing:
        storeFile: "${RELEASE_STORE_FILE}"
        storePassword: "${RELEASE_STORE_PASSWORD}"
        keyAlias: "${RELEASE_KEY_ALIAS}"
        keyPassword: "${RELEASE_KEY_PASSWORD}"

Durante la build, Lightbuild legge ogni valore dalla relativa variabile di ambiente, in modo che le password non vengano archiviate nei file del progetto. Per saperne di più su queste impostazioni, consulta Pacchettizzazione nel riferimento alla configurazione di Lightbuild.

Imposta le variabili di ambiente

Prima di eseguire la build, imposta le variabili di ambiente nel terminale in cui esegui l'interfaccia a riga di comando Lightbuild. Ad esempio, su macOS o Linux:

export RELEASE_STORE_FILE="$HOME/keystores/upload-keystore.jks"
export RELEASE_STORE_PASSWORD="KEYSTORE_PASSWORD"
export RELEASE_KEY_ALIAS="upload"
export RELEASE_KEY_PASSWORD="KEY_PASSWORD"

Su Windows, in PowerShell:

$env:RELEASE_STORE_FILE = "$HOME\keystores\upload-keystore.jks"
$env:RELEASE_STORE_PASSWORD = "KEYSTORE_PASSWORD"
$env:RELEASE_KEY_ALIAS = "upload"
$env:RELEASE_KEY_PASSWORD = "KEY_PASSWORD"

Sostituisci KEYSTORE_PASSWORD e KEY_PASSWORD con le tue password. In un sistema CI, archivia le password come secret ed esponile alla build come variabili di ambiente.

Crea un app bundle firmato

Prima di ogni release, aumenta l'impostazione versionCode nel file lightbuild.yaml del modulo dell'app e aggiorna versionName, se necessario. Google Play richiede un codice versione più alto per ogni caricamento. Per ulteriori informazioni, vedi Esegui il controllo della versione dell'app.

Per creare l'app bundle della release firmato, esegui:

lightbuild build app:app-release.aab

Lightbuild scrive il bundle in app/build/app-release.aab. Per vedere dove ogni target del modulo dell'app scrive il proprio output, esegui lightbuild query app/... --output=files.

Carica la tua app su Google Play

Carica l'app bundle firmato su Play Console. Per testare la tua app prima di rilasciarla agli utenti, caricala prima in un canale di test interno. Per saperne di più, consulta Carica l'app su Play Console.