Saltare al contenuto

Costruzioni Android

Crea e invia applicazioni Android al Google Play Store utilizzando l'infrastruttura dedicata di Capgo.

  • Imparerai a caricare il tuo app tramite Capgo Native build
  • Imparerai a configurare le credenziali per Capgo Native Build
  • È necessario avere un account Google Developer attivo
  • È necessario avere Android Studio installato
  • La tua app deve essere in grado di compilarsi con successo con Android Studio

Prima di poter iniziare a pensare a costruire l'app con Capgo, dovremmo prima configurarla e fare una prima costruzione Android a mano. Ci sono alcuni vantaggi nel fare una costruzione manuale prima:

  • Preparerai le credenziali per la successiva costruzione Capgo
  • Crea un record sul Console di Store Play

Prima di poter iniziare a costruire l'applicazione con Capgo, dobbiamo costruire l'applicazione manualmente con Android Studio.

  1. Apri Android Studio

    Esegui bunx cap open android per aprire il progetto di Android Studio.

  2. Clicca su Build -> Generate Signed App Bundles / APKs Android Studio genera bundle firmati per l'app / APK

  3. Seleziona Android App Bundle e clicca su Next Android Studio seleziona bundle per l'app Android

In questo momento, manca il file del keystore. Questo file viene utilizzato per firmare l'app, il che consente a Google di sapere che è stato costruito da te.

  1. Per generarlo, utilizzeremo il metodo GUI fornito da Android Studio. Create new Esiste anche un modo per farlo con la riga di comando, ma non lo copriremo in questo tutorial.

  2. Clicca su Crea nuovo keystore in Android Studio

  3. DEVE ESSERE SALVATO - verrà utilizzato in seguito per firmare l'applicazione e per la distribuzione sul Play Store. Setta la password del Key Store in Android Studio

  4. Compilare il resto del modulo

    1. Mantieni il Key Alias come è (key0)
    2. Compilare i dettagli del certificato. Ho riempito i dettagli con dati falsi, ma dovresti riempirli con i tuoi dettagli.

    Compilare il resto del modulo in Android Studio

  5. Clicca su OK Clicca su OK in Android Studio

  1. Assicurati che tutti i dettagli per il keystore siano stati inseriti correttamente e clicca su Next Assicurati che tutti i dettagli per il keystore siano stati inseriti correttamente in Android Studio

  2. Seleziona il release varianta di costruzione e clicca su Create In Android Studio seleziona la varianta di costruzione di rilascio

  3. Dopo che la costruzione ha avuto successo, dovresti vedere la schermata seguente In Android Studio dopo la costruzione è riuscita

    1. Questo popup indica che la costruzione è riuscita.
    2. Clicca sul locate bottoni - questo aprirà l'esploratore dei file e dovresti vedere il build lì.
  4. Assicurati di poter vedere il build nell'esploratore dei file Studio Android assicurati di poter vedere il build nell'esploratore dei file

  1. Vai a Console di Giocatore di Google

  2. Seleziona il profilo del developer corretto Console di Giocatore di Google seleziona profilo del developer corretto

  3. Clicca su Create app Console di Giocatore di Google crea app

  4. Scegli il nome dell'app e la lingua Google Play Console scegli il nome dell'app e la lingua

  5. Seleziona la categoria dell'app e se è a pagamento o gratuita Google Play Console seleziona la categoria dell'app e se è a pagamento o gratuita

  6. Accetta i termini e le condizioni Google Play Console accetta i termini e le condizioni

  7. Clicca su Create Google Play Console clicca su crea

Ora che hai creato l'app, puoi creare un gruppo di testing interno. Poiché non pubblicherò l'app per tutti su Play Store, dovrò creare un gruppo di testing interno.

  1. Andare a internal testing Clicca su Test and release -> Testing -> Internal testing

    Console di Google Play per il testing interno

  2. Clicca su Testers Google Play Console tester

  3. Clicca su Create email list Google Play Console crea lista email

  4. Nomi la lista email Google Play Console nomina la lista email

  5. Aggiungi gli indirizzi email dei tester Google Play Console aggiungi gli indirizzi email dei tester

  6. Premi Enter e clicca su Save Google Play Console premi invio e clicca su salva

  7. Clicca su Create group Google Play Console crea gruppo

  8. Assicurati che la nuova lista sia selezionata e clicca su Save Google Play Console assicurati che la nuova lista sia selezionata e clicca su salva

Ora che hai creato il gruppo di testing interno, puoi caricare l'app nella sezione di testing interno.

  1. Vai a Test and release -> Testing -> Internal testing Google Play Console testing interno

  2. Clicca sul Releases tasto Google Play Console pulsante rilascio

  3. Clicca sul Create new release Google Play Console pulsante crea nuova versione

  4. Clicca su Upload Carica su Google Play Console

  5. Seleziona il file AAB Seleziona il file AAB su Google Play Console

  6. Aspetta che il file AAB venga caricato

  7. Clicca su Next Procedi su Google Play Console

  8. Correggi gli errori

    Personalmente, in questo stadio vedo questo errore

    Avviso spaventoso del Console di Gioco Play

    Ciò accade perché non ho ancora verificato il mio numero di telefono. Lo farò e continuerò il tutorial.

  9. Clicca su Save and publish Ciò pubblicherà l'applicazione nel gruppo di testing interno. Console di Gioco Play salva e pubblica

  10. Conferma la pubblicazione Console di Gioco Play conferma la pubblicazione

  11. Assicurati che l'applicazione sia pubblicata Console di Gioco Play assicurati che l'applicazione sia pubblicata

  12. Ottieni il nome temporaneo dell'applicazione Console di Gioco Play ottieni il nome temporaneo dell'applicazione

Ora che hai caricato l'applicazione nel gruppo di testing interno, puoi accettare l'invito al gruppo di testing interno.

  1. Vai a Test and release -> Testing -> Internal testing Console di Google Play per testing interno

  2. Clicca su Testers Console di Google Play per gli utenti di testing

  3. Clicca su Copy link Console di Google Play per copiare il link

  4. Invia il link al tuo telefono, aprilo nel browser e clicca su Accept Console di Google Play per accettare l'invito

  5. Conferma che l'invito è stato accettato e clicca su “scaricalo dal Play Store” Console di Google Play scaricalo dal Play Store

  6. Installa l'app

    1. Se hai già installato l'applicazione utilizzando Android Studio, clicca sul uninstall tasto Console di Google Play disinstalla app
    2. Clicca sul install tasto Console di Google Play installa app
    3. Apri l'app e conferma che sia stato scaricato correttamente

Ora sei pronto a iniziare la configurazione di Capgo Build Nativo. Congratulazioni! 🎉

RequisitoFlagDescrizioneRichiesto
File del keystore--keystore <path>Percorso del tuo .jks/.keystore file utilizzato per firmare l'APK/AAB.
Alias del keystore--keystore-alias <alias>Nome dell'alias della chiave all'interno del keystore.
Password della chiave del keystore--keystore-key-password <password>Password della chiave. Se le password chiave/keystore coincidono, puoi fornire solo una.Guarda la nota qui sotto
Password del keystore--keystore-store-password <password>Password del keystore. Se le password chiave/keystore coincidono, puoi fornire solo una.Guarda la nota qui sotto
Account servizio Google Play--play-config <path>File JSON del servizio account per gli upload su Play Store.
Finestra del terminale
bunx @capgo/cli@latest build credentials save --platform android \
--keystore ./path/to/keystore.jks \
--keystore-alias "your-alias" \
--keystore-key-password "key-password" \
--keystore-store-password "store-password" \
--play-config ./play-store-service-account.json

Keystore, password del keystore, password della chiave del keystore, alias del keystore

Sezione intitolata “Keystore, password del keystore, password della chiave del keystore, alias del keystore”

Se hai seguito le istruzioni di costruzione manuale, dovresti avere già generato il keystore. Se non hai seguito le istruzioni, per favore segui le istruzioni per generare il keystore. Account del servizio Google PlaySe le password della chiave e dello store sono identiche, fornisci solo una delle due

La generazione dell'account servizio Google Play è un processo manuale e complesso. Tuttavia, è necessario per caricare il tuo app su Google Play. Per favore, tenga presente le seguenti cose:

  • Tu HAI BISOGNO di essere il proprietario dell'Account dello Sviluppatore. Altrimenti, non sarai in grado di configurare l'account del servizio.
  • Dovrai creare un nuovo progetto di Google Cloud (separato dal tuo account Google Play)

Iniziare.

  1. Vai a Google Cloud Console

  2. Clicca sul selettore del progetto Selezionatore di Progetto di Console di Google

  3. Se già hai un progetto, selezionalo. Altrimenti, crea un nuovo progetto:

    1. Clicca su New project Pulsante Nuovo Progetto in Console di Google
    2. Nome il tuo progetto e clicca Create Schermo di nomina del progetto mostrante campo nome e pulsante Crea
    3. Assicurati di essere sul progetto giusto Nome del progetto mostrante in selezionatore indicando corretta selezione del progetto
  4. Clicca sul campo di ricerca e cerca service accounts e clicca su di esso barra di ricerca di Google Console

  5. Clicchiamo su Create service account tasto Crea Servizio Account in Google Console

  6. Compila il modulo per il servizio account e clicca su Done

    1. Raccomando di impostare il nome a Capgo Native Build Service Account
    2. Per l'ID del Servizio Account, raccomando di impostarlo a capgo-native-build-service-acc
    3. Per quanto riguarda la descrizione, non è necessario compilare, ma raccomando di riempirla con Allows Capgo Native Build to build and submit the app to the Play Store

    Compila il modulo per il servizio account in Google Console

  7. Clicca sul servizio account appena creato Ora dovresti vedere il servizio account appena creato nella lista. Clicca su di esso. servizio account appena creato in Google Console

  8. Clicca sul Keys tab chiave

  9. tab delle chiavi in Google Console Add Key Clicca su Create new key e

  10. aggiungi una nuova chiave in Google Console JSON Clicca su Create e

  11. Scarica il file JSON Il file JSON dovrebbe essere stato scaricato automaticamente. Puoi cliccare su close per chiudere la finestra. Chiave di download Console Google

Concedere a Play Store API l'accesso all'account di servizio

Sezione intitolata “Concedere a Play Store API l'accesso all'account di servizio”

L'account di servizio appena creato non ha ancora accesso a Play Store API. Per concederglielo, vai al Console di Play Store.

  1. Vai a Console di Google Play
  2. Seleziona il profilo dello sviluppatore corretto Console di Google Play seleziona profilo dello sviluppatore corretto
  3. Clicca su Users and permissions Console di Google Play utenti e autorizzazioni
  4. Clicca su Invite new users Console di Google Play invita nuovi utenti
  5. Copia l'indirizzo email del servizio account Console di Google Play copia indirizzo email del servizio account
  6. Vai a Account permissions e concedi i permessi minimi richiesti:
    • In App permissions, concedi accesso all'applicazione.
    • In Releases, abilita Create, edit, and roll out releases.
    • Se il tuo workflow utilizza Play App Signing, abilita il relativo permesso di firma.
    • Se sei incerto, utilizza Admin solo durante la configurazione, quindi riduci i permessi successivamente. Console di Google Play concedi permessi
  7. Clicca su Invite user Console di Google Play invita utente
  8. Conferma l'invito Console di Google Play conferma l'invito
  9. Conferma di aver inviato l'utente Google Play Console conferma di aver inviato l'utente

Sei ora pronto a salvare le credenziali e eseguire il primo build. Puoi salvare le credenziali utilizzando il seguente comando:

Fermata di terminale
bunx @capgo/cli@latest build credentials save --platform android \
--keystore ./path/to/keystore.jks \
--keystore-alias "your-alias" \
--keystore-key-password "key-password" \
--keystore-store-password "store-password" \
--play-config ./play-store-service-account.json

Se hai già completato Keystore, password del keystore, password della chiave del keystore, alias del keystore e account di servizio di Google Play, hai già tutto ciò che ti serve per CI/CD. Questa sezione copre solo come passare quei valori come segreti e variabili d'ambiente di GitHub Actions.

1) Converti i file di credenziali in base64 a riga singola

Sezione intitolata “1) Converti i file di credenziali in base64 a riga singola”
Finestra del terminale
# Android keystore (.jks or .keystore)
base64 -i ./path/to/keystore.jks | tr -d '\n' > keystore_base64.txt
# Google Play service account JSON
base64 -i ./play-store-service-account.json | tr -d '\n' > play_config_base64.txt

In GitHub > Repository > Settings > Secrets and variables > Actionsaggiungi:

Nome segretoValore
CAPGO_TOKENIl tuo Capgo API token
APP_IDIl tuo Capgo ID dell'app (esempio: com.example.app)
ANDROID_KEYSTORE_FILEContenuto di keystore_base64.txt
KEYSTORE_KEY_ALIASAlias del keystore da Keystore, password del keystore, password della chiave del keystore, alias del keystore
KEYSTORE_KEY_PASSWORDPassword della chiave del keystore
KEYSTORE_STORE_PASSWORDPassword del keystore
PLAY_CONFIG_JSONContenuto di play_config_base64.txt

3) Utilizza le variabili di ambiente nel tuo GitHub workflow di Actions

Sezione intitolata “3) Utilizza le variabili di ambiente nel tuo GitHub workflow di Actions”
github/workflows/android-build.yml
name: Android Cloud Build
on:
workflow_dispatch:
push:
branches: [main]
jobs:
android-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Request Android build with Capgo
run: bunx @capgo/cli@latest build request ${{ secrets.APP_ID }} --platform android
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
ANDROID_KEYSTORE_FILE: ${{ secrets.ANDROID_KEYSTORE_FILE }}
KEYSTORE_KEY_ALIAS: ${{ secrets.KEYSTORE_KEY_ALIAS }}
KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }}
KEYSTORE_STORE_PASSWORD: ${{ secrets.KEYSTORE_STORE_PASSWORD }}
PLAY_CONFIG_JSON: ${{ secrets.PLAY_CONFIG_JSON }}

Congratulazioni! 🎉! Siete ora pronti per eseguire la prima costruzione.

Esegui:

Fermata del terminale
bunx @capgo/cli@latest build request com.example.app --platform android

E questo avvierà il processo di costruzione 🍾🥂

Invia la versione di rilascio di Play per la revisione

Sezione intitolata “Invia la versione di rilascio di Play per la revisione”

Di default, i rilasci di costruzione Android caricano su Google Play e possono rimanere inattivi fino a quando non avete completato il rilascio nel Console di Play. Se il rilascio di CI dovrebbe inviare la versione di rilascio di Play automaticamente, passa --submit-to-store-review con un rilascio di costruzione:

Fermata del terminale
npx @capgo/cli@latest build request com.example.app \
--platform android \
--build-mode release \
--submit-to-store-review \
--store-release-name "1.2.3" \
--store-release-notes "General improvements" \
--store-release-notes-locale "en-US=General improvements" \
--store-release-notes-locale "nl-NL=Algemene verbeteringen" \
--store-release-notes-locale "fr-FR=Ameliorations generales"

Richiede la stessa configurazione dell'account Google Play per l'upload normale (PLAY_CONFIG_JSON in CI o salvare le credenziali Android localmente). --store-release-name viene utilizzato come nome di rilascio Google Play. --store-release-notes è il changelog di fallback Play, e ogni --store-release-notes-locale "locale=notes" inserisce un changelog Play localizzato per quel locale. Capgo invia il rilascio Play come completed; se è abilitata la pubblicazione gestita nel Console di Play, Google può ancora attendere la tua pubblicazione manuale dopo l'approvazione.

Continua da Android Builds

Se stai utilizzando

Android Builds per pianificare l'automazione CI/CD, connettilo con __CAPGO_KEEP_0__ CI/CD Capgo CI/CD per il flusso di lavoro del prodotto in Capgo CI/CD, Capgo Costruzioni native per il flusso di lavoro del prodotto in Capgo Costruzioni native, Capgo Integrazioni per il flusso di lavoro del prodotto in Capgo Integrazioni, Integrazione CI/CD per il dettaglio di implementazione in Integrazione CI/CD, e GitHub Integrazione azioni per il dettaglio di implementazione in GitHub Integrazione azioni.