Saltare al contenuto

Costruzione di Build iOS

Costruisci e invia app iOS su TestFlight e App Store utilizzando l'infrastruttura Mac dedicata di Capgo.

  • Imparerai a caricare il tuo app tramite Capgo Native build
  • Imparrai a configurare i certificati per Capgo Native Build
  • Un account Capgo (un periodo di prova gratuito è sufficiente per iniziare)
  • La tua app già registrata in Capgo (esegui bunx @capgo/cli@latest app add se non lo è)
  • Un computer Mac con Xcode installato (è possibile impostare la costruzione su una macchina Linux/Windows, ma non è ancora documentato)
  • Un account di sviluppatore Apple valido (99 dollari all'anno) (Devi avere diritti di amministratore o proprietario sull'account di sviluppatore Apple)
  • La tua app deve poter essere costruita con successo tramite Xcode
  • Un'app Capacitor
  • Un'icon configurata per l'app. Le app senza un'icon non possono essere caricate sullo Store App.

Prima di configurare i certificati o di attivare il primo caricamento di TestFlight, assicurati che l'account Apple e il team siano pronti:

  • Attiva l'autenticazione a due fattori per l'account Apple utilizzato per l'iscrizione
  • Scegli il tipo di abbonamento giusto:
    • Persona fisica / Imprenditore individuale: il tuo nome personale diventa il nome del venditore sull'App Store
    • Organizzazione: richiede un'entità legale, un numero D-U-N-S, un sito web aziendale pubblico, un indirizzo email di lavoro sul dominio della società e una persona autorizzata a legare l'organizzazione agli accordi di Apple
  • Utilizza un account che può accedere sia a Apple Developer che a App Store Connect per certificati, registri di app, API chiavi e TestFlight
  • Assicurati di bloccare il tuo ID bundle finale presto. Cambiarlo in seguito significa di solito ricominciare la configurazione di App Store
  • Pianifica questi elementi di App Store Connect prima della revisione di App: URL del supporto, URL della politica sulla privacy, classificazione di età, screenshot, conformità all'esportazione e dettagli di contatto per la revisione di App
Iscriviti al programma di sviluppatore Apple Continua l'iscrizione al programma di sviluppatore Apple sul web Seleziona il tipo di entità di sviluppatore Apple corretto App Store Connect dopo l'iscrizione

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

  • Configurerete il certificato di distribuzione sul vostro computer locale
  • Creerete il record dell'App Store se non l'avete fatto ancora
  • Potrete risolvere qualsiasi problema del processo di costruzione collegato all'app code

Prima di poter iniziare, dovete avere il certificato di distribuzione installato sul vostro computer locale. Questo è un po' complesso, ma spiegherò tutto di seguito.

Configurazione della certificazione di distribuzione

Sezione intitolata “Configurazione della certificazione di distribuzione”
  1. Apri Xcode

  2. Clicca su Xcode -> Settings... Alternativamente, puoi utilizzare la scorciatoia Cmd + ,

    Impostazioni Xcode

  3. Vai a Accounts Tabella account Xcode

  4. Trova l'account Apple aggiunto all'account sviluppatore Apple Account Apple selezionato Xcode

  5. Trova il team che utilizzerai per distribuire l'app Trova il team Xcode

  6. Clicca sul Manage Certificates... tasto Gestisci certificati Xcode

  7. Assicurati di poter vedere il certificato di distribuzione nella lista Certificato di distribuzione Xcode

  8. Se non riesci a farlo, devi creare un nuovo certificato

    1. Clicca sul + tasto e poi su Apple Distribution Aggiungi certificato Xcode
    2. The certificate verrà creato automaticamente. Puoi vederlo nella lista. Guarda il passaggio precedente per confermare che lo vedi.

Ora che hai installato il certificato di distribuzione, puoi iniziare il processo di build.

  1. Apre l'app in Xcode

    Esegui bunx cap open ios per aprire l'app in Xcode.

  2. Cerca e clicca sul archive tasto

    Nella barra degli strumenti di Xcode, cerca e clicca sul product -> archive tasto.

    Barra degli strumenti di Xcode

  3. Aspettare la compilazione per completarsi

  4. Cliccare sul Distribute App tasto

    tasto di distribuzione Xcode

  5. Selezionare TestFlight Internal Only come metodo di distribuzione e cliccare sul Distribute tasto

    metodo di distribuzione Xcode TestFlight interno solo

  6. Configurare il record dell'app

    Compilare i seguenti campi:

    1. Nome: Il nome della tua app - visibile nella App Store
    2. Codice a barre SKU - il codice a barre della tua app - questo viene utilizzato per identificare la tua app nella App Store
    3. The primary language - la lingua principale del tuo app

    Poi, clicca sul next button

    Configura Xcode TestFlight app record

  7. Se la creazione del record dell'app fallisce, prova a chiudere la finestra e prova a creare l'archivio dell'app di nuovo.

  8. Aspetta che l'upload sia completo

  9. Se tutto è andato bene, dovresti vedere lo schermo seguente Xcode TestFlight upload completo

  10. Clicca sul Done button

Possibilmente penserai che tutto sia andato bene ora e che potrai vedere il tuo app in TestFlight ora, ma ci sono ancora alcune cose da finire:

  1. Aggiungiti a TestFlight
  2. Esegui l'export compliance in modo che il build diventi testabile
  3. Inserisci i metadati obbligatori di App Store Connect, come il tuo URL di supporto, il tuo URL di politica sulla privacy e la tua classificazione di età
  4. Prepara le schermate che corrispondono ai dispositivi che effettivamente supporti
  5. Aggiungi i dettagli di contatto per la revisione App e qualsiasi credenziale di test prima della sottoscrizione di produzione

Iniziamo con il primo:

  1. Vai al Pagina di App Store Connect Pagina di accesso a App Store Connect Accedi con il tuo account di sviluppatore Apple

  2. Accedi con il tuo account Apple Developer

  3. Seleziona l'equipe che hai utilizzato quando hai creato il record dell'app. Se hai solo un account di sviluppatore, puoi saltare questo passaggio. Selezione dell'equipe di App Store Connect

  4. Clicca sul Apps button App Store Connect apps button

  5. Trova l'app che hai creato nel passaggio precedente e clicca su di essa Selezione dell'app di App Store Connect

  6. Clicca sul TestFlight button App Store Connect testflight button

  7. Clicca sul Internal Testers plus button App Store Connect interni tester plus button

  8. Crea un nuovo gruppo

    Mi piace chiamare il gruppo “interni”. Puoi chiamarlo come vuoi.

    App Store Connect crea nuovo gruppo

  9. Clicca su Invite testers button App Store Connect invita tester button

  10. Aggiungiti al gruppo

    Trova te stesso nella lista e seleziona la casella accanto al tuo nome. (Potresti dover ricaricare la pagina per vederlo) Poi, clicca su il Add button.

    App Store Connect invita tester checkbox

  11. Verifica che sei stato aggiunto al gruppo

    Now, dovresti vedere te stesso nel gruppo.

    Verifica tester di App Store Connect

Congratulazioni 🎉 Hai aggiunto te stesso a TestFlight. Ora, c'è solo una cosa in più che devi fare prima di poter configurare Capgo Native Build.

Ora hai bisogno di promettere a Apple che il tuo app non utilizza alcuna crittografia non standard (come un algoritmo personalizzato). Se il tuo app utilizza alcuna crittografia non standard, ti consiglio di leggere il documentazione di Apple su come gestire questo aspetto. Ci sono due modi per farlo:

  1. Potresti fare questo a mano ogni volta che costruisci il tuo app.
  2. Potresti configurare il tuo file plist per impostare automaticamente questo valore su false.

Iniziamo con il primo:

  1. Segui tutte le istruzioni della sezione precedente per trovare la sezione TestFlight in App Store Connect

  2. Clicca su Builds -> iOS App Store Connect costruisci iOS button

  3. Trova il build con informazioni di conformità mancanti e clicca su Manage App Store Connect gestisci build

  4. Seleziona l'opzione che meglio descrive il tuo app

    Per me, questo è none, ma potrebbe essere diverso per te. Dopo, clicca su salva

    App Store Connect salva informazioni di conformità

  5. Il tuo app dovrebbe ora dire ready to test

    App Store Connect pronto per il test

Per quanto riguarda il secondo, ecco i passaggi:

  1. Apri il Info.plist file

  2. Aggiungi la seguente chiave:

    <key>ITSAppUsesNonExemptEncryption</key>
    <false/>
  3. Salva il file

L'installazione dell'app TestFlight e l'accettazione dell'invito

Sezione intitolata “L'installazione dell'app TestFlight e l'accettazione dell'invito”

Ora, sei ALMOST pronto per testare il tuo app in TestFlight. Prima, hai bisogno di fare le seguenti cose:

  1. Scaricare l' applicazione TestFlight dalla App Store sul tuo dispositivo iOS/iPadOS
  2. Accettare l'invito per testare il tuo app

Non descriverò i dettagli su come installare l'applicazione TestFlight sul tuo dispositivo. Se non sei sicuro di come installare un'app, Google ha alcune guide fantastiche su come farlo.

Per quanto riguarda l'accettazione dell'invito, riceverai un'email da Apple con un link per accettare l'invito.

  1. Apri l'email da Apple con il link per accettare l'invito

  2. Clicca sul View in TestFlight button button di email di TestFlight

  3. Clicca sul Install button Button di installazione di TestFlight

  4. Installa l'app sul tuo dispositivo

    Se hai già installato l'app utilizzando Xcode, potresti vedere lo schermo seguente. Per favore clicca sul install button. Installa l'app di TestFlight

  5. Aspetta che l'app venga installata

  6. Clicca sul Open button e cliccalo

Congratulazioni 🎉 Hai accettato l'invito a testare l'app in TestFlight. Ora puoi configurare Capgo Native Build per costruire e inviare l'app a TestFlight.

There sono alcune cose che devi configurare in Capgo Build nativo per poter costruire e inviare il tuo app su TestFlight. Ecco una lista delle cose che passerai al Capgo CLI:

ParametroDescrizione
--platformLa piattaforma per cui costruire (ios)
--apple-team-idIl tuo ID di sviluppatore Apple (trovato in Portale dello sviluppatore Apple)
--apple-keyPercorso del tuo file chiave di App Store Connect API (.p8 file
--apple-key-idID della chiave del tuo App Store Connect API Key
--apple-issuer-idID emittente del tuo App Store Connect
--certificatePercorso del tuo certificato di distribuzione (.p12 file
--ios-provisioning-profileMappatura del profilo di provisioning (bundleId=path o semplicemente percorso per un profilo singolo

Esempio di comando:

Fermata del terminale
bunx @capgo/cli@latest build credentials save \
--platform ios \
--apple-team-id YOUR_TEAM_ID \
--apple-key '/path/to/AuthKey_XXXXX.p8' \
--apple-key-id YOUR_KEY_ID \
--apple-issuer-id YOUR_ISSUER_ID \
--certificate '/path/to/certificate.p12' \
--ios-provisioning-profile '/path/to/profile.mobileprovision'

Iniziare con l'ID del team. Trovarlo è piuttosto facile.

  1. Vai a Account del Developer Apple e scendi

  2. Cerca il Team ID

    Posizione ID team nel account di sviluppatore

Ora, passiamo alla chiave Apple.

  1. Accedi a pagina di accesso e utente di App Store Connect

  2. Seleziona la squadra corretta dal menu a discesa

    1. Clicca sul tuo nome nell'angolo in alto a destra
    2. Clicca sulla squadra che vuoi utilizzare Sceglienza della squadra Apple Developer
  3. Clicca sul Integrations tasto Pulsante di integrazione App Store Connect

  4. Trova il issuer

    Clicca sul copy tasto per copiare l'issuer Copiare l'issuer di App Store Connect

  5. Clicca sul pulsante con il segno più Pulsante per aggiungere una chiave in App Store Connect

  6. Imposta il nome della chiave e impostare l'accesso a App manager e clicca sul Generate pulsante Aggiungi nome chiave a App Store Connect, impostare accesso al gestore app e generare pulsante

  7. Salva l'ID chiave

    Copia l'ID chiave da App Store Connect

  8. Scarica la chiave

    Chiave di download per App Store Connect

    Avviso chiave di download per App Store Connect

Congratulazioni 🎉 Hai creato la chiave Apple, ID chiave Apple e ID rilasciatore Apple.

Ora, sei pronto per esportare il certificato. Come ricorderai, uno dei primi passaggi di questa guida era la configurazione del certificato di distribuzione.

Tuttavia, Apple, nella loro infinita saggezza, ha deciso che il modo in cui esportare il certificato è molto diverso da quello in cui crearli 🙃 Vediamo di impostarlo:

  1. Apri Keychain Access

    1. Clicca Command + Space per aprire la barra di ricerca
    2. Cerca Keychain Access
    3. Clicca sul Keychain Access app
  2. Seleziona la login categoria e clicca sul My Certificates tasto Categoria di accesso a Keychain

  3. Trova il tuo certificato nella lista

    Il certificato dovrebbe essere denominato Apple Distribution: [Your Name/Company] (your team ID) Trova il certificato con Keychain Access

  4. Fai clic destro sul certificato e seleziona Export Esporta il certificato con Keychain Access

  5. Salva il certificato come un .p12 file

    1. Assicurati di selezionare un buon nome per il file del certificato
    2. Assicurati di impostare il formato del file su Personal Information Exchange (.p12)
    3. Clicca sul Save tasto

    Dialogo di salvataggio del certificato di Accesso alla chiave

  6. Quando ti viene chiesto la password, puoi scegliere di:

    • Saltare la password (consigliato per semplicità): Clicca OK senza inserire alcuna password
    • Imposta una password: Se preferisci proteggere il tuo certificato con una password, puoi impostarla qui. I file protetti da password sono pienamente supportati dal __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ - basta fornire la password utilizzando l' .p12 files are fully supported by the Capgo CLI - just provide the password using the --p12-password Dialogo di salvataggio del certificato di Accesso alla chiave con password

    Quando ti viene chiesto la 'password della chiave di accesso al login', inserisci la password che utilizzi per accedere al tuo Mac

  7. Dialogo di salvataggio del certificato di Accesso alla chiave con password

    Dai la password che usi per accedere al tuo Mac. Poi, clicca sul Allow tasto.

    L'accesso alla chiave di sistema salva la chiave di accesso al certificato

Congratulazioni 🎉 Hai esportato il certificato.

Ora sei pronto ad esportare il profilo di provisioning. Ti prometto, questo è l'ultimo cosa che dovrai ottenere da Apple.

  1. Vai a Profili dello sviluppatore di Apple

  2. Seleziona il team corretto dal menu a discesa

    1. Clicca sul tuo nome nell'angolo in alto a destra
    2. Clicca sul team che vuoi utilizzare Scegli il team di chiave Apple Developer
  3. Assicurati di essere sulla pagina giusta Dovrebbe assomigliare a questo, se non è così clicca su profiles in menu a discesa

    pagina dei profili Apple Developer

  4. Clicca sul + bottoni bottoni di aggiunta profilo Apple Developer

  5. Scegli il tipo di profilo Scegli App Store Connect e clicca sul Continue bottoni

    Scegli il tipo di profilo Apple Developer

  6. Scegli l'app che vuoi costruire

    Trova il tuo'applicazione nella lista a discesa e clicca sul Continue button

    Scegli l'app di Apple Developer

  7. Scegli il certificato di distribuzione corretto

    Scegli il certificato che hai esportato nel passaggio precedente e clicca sul Continue button

    Scegli il certificato di distribuzione di Apple Developer

    Se sei incerto sul certificato da selezionare, torna a Keychain Access e trova il certificato che hai esportato. Poi guarda la data di scadenza.

    Data di scadenza del certificato di distribuzione di Apple Developer

  8. Nome il profilo

    Dai un nome al profilo e clicca sul Generate button

    Nome del profilo Apple Developer

  9. Scarica il profilo

    Clicca sul Download tasto per scaricare il profilo

    Scarica il profilo di sviluppatore Apple

Congratulazioni 🎉 Ora hai tutto ciò di cui hai bisogno per configurare Capgo Build Nativo.

Hai fatto! Ora hai tutto ciò di cui hai bisogno per configurare Capgo Build Nativo.

Il comando che dovrai eseguire è:

Finestra del terminale
bunx @capgo/cli@latest build credentials save \
--platform ios \
--apple-team-id UVTJ336J2D \
--apple-key ./capgo-tutorial/AuthKey_66FGQZB566.p8 \
--apple-key-id 66FGQZB566 \
--apple-issuer-id 0cd4db4a-5598-45b8-9d32-75cdf127d005 \
--certificate ./capgo-tutorial/capgo-build-tutorial-certificate.p12 \
--ios-provisioning-profile ./capgo-tutorial/capgo_native_build_tutorial.mobileprovision

Your Apple Key ID

Capgo CLI credenziali di accesso salva output

Se hai già completato ID del team, chiave Apple, ID chiave Apple e ID emittente Apple, Certificato, e Profilo di provisioning, 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.

Fenestra del terminale
# Distribution certificate (.p12)
base64 -i ./capgo-tutorial/capgo-build-tutorial-certificate.p12 | tr -d '\n' > certificate_base64.txt
# Provisioning profile (.mobileprovision)
base64 -i ./capgo-tutorial/capgo_native_build_tutorial.mobileprovision | tr -d '\n' > profile_base64.txt
# App Store Connect API key (.p8)
base64 -i ./capgo-tutorial/AuthKey_66FGQZB566.p8 | tr -d '\n' > apple_key_base64.txt

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

Nome segretoValore
CAPGO_TOKENIl tuo Capgo API token
APP_STORE_CONNECT_TEAM_IDID del team da ID del team
APPLE_KEY_IDID della chiave da Chiave Apple, ID della chiave Apple e ID dell'emittente Apple
APPLE_ISSUER_IDID dell'emittente da Chiave Apple, ID chiave Apple e ID rilasciatore Apple
BUILD_CERTIFICATE_BASE64Contenuto di certificate_base64.txt
CAPGO_IOS_PROVISIONING_MAPGenerato da CLI — copia da .capgo-credentials file
APPLE_KEY_CONTENTContenuto di apple_key_base64.txt
P12_PASSWORD (facoltativo)Il tuo .p12 password se impostato durante l'esportazione

3) Utilizza le variabili di ambiente nei tuoi GitHub workflow di Actions

Sezione intitolata “3) Utilizza le variabili di ambiente nei tuoi GitHub workflow di Actions”
.github/workflows/ios-build.yml
name: iOS Cloud Build
on:
workflow_dispatch:
push:
branches: [main]
jobs:
ios-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Request iOS build with Capgo
run: bunx @capgo/cli@latest build request --platform ios
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
APP_STORE_CONNECT_TEAM_ID: ${{ secrets.APP_STORE_CONNECT_TEAM_ID }}
APPLE_KEY_ID: ${{ secrets.APPLE_KEY_ID }}
APPLE_ISSUER_ID: ${{ secrets.APPLE_ISSUER_ID }}
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
CAPGO_IOS_PROVISIONING_MAP: ${{ secrets.CAPGO_IOS_PROVISIONING_MAP }}
APPLE_KEY_CONTENT: ${{ secrets.APPLE_KEY_CONTENT }}
P12_PASSWORD: ${{ secrets.P12_PASSWORD }}

Ora sei pronto a eseguire la tua prima costruzione.

Esegui il seguente comando per costruire la tua app:

Finestra del terminale
bunx @capgo/cli@latest build request --platform ios

Congratulazioni 🎉 In questo punto, hai avuto successo nella costruzione della tua app e è pronta per essere inviata alla revisione dell'App Store.

The build path standard App Store carica il build su App Store Connect/TestFlight. Se il rilascio CI dovrebbe anche allegare il build elaborato di TestFlight alla versione App Store e sottoporla per la revisione di App Review, passa --submit-to-store-review con un rilascio di build:

Fenestra del terminale
npx @capgo/cli@latest build request com.example.app \
--platform ios \
--build-mode release \
--ios-distribution app_store \
--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" \
--no-ios-automatic-release

Questa richiede le credenziali chiave di App Store Connect API (APPLE_KEY_ID, APPLE_ISSUER_ID, APPLE_KEY_CONTENT, e APP_STORE_CONNECT_TEAM_ID). L'upload della password specifica per l'app e ad_hoc la distribuzione non possono sottoporre un build per la revisione. --store-release-name è la versione App Store; se omesso, Capgo legge MARKETING_VERSION dal progetto Xcode. --store-release-notes è il testo 'What’s New' di fallback App Store, e ogni --store-release-notes-locale "locale=notes" entry può sovrascriverlo per una localizzazione di store. Utilizza --ios-automatic-release rilevare automaticamente dopo l'approvazione di Apple, o --no-ios-automatic-release attendere una rilascio manuale. --ios-testflight-groups è ancora disponibile per la distribuzione beta esterna, ma non è richiesta per la sottoscrizione di revisione di App Store.

Di default, Capgo costruisce app iOS per la distribuzione su App Store (TestFlight + App Store). Se hai bisogno di costruire app ad-hoc al posto di quelle (per test interni o raccolta di artefatti di CI), puoi utilizzare la --ios-distribution flag.

Sottosezione intitolata “Quando utilizzare la modalità ad-hoc”

Desideri distribuire le IPA direttamente ai dispositivi registrati (nessun TestFlight)
  • Non hai o non vuoi utilizzare una chiave App Store Connect __CAPGO_KEEP_0__
  • You don’t have or don’t want to use an App Store Connect API key
  • senza sottoporre a valutazione l'App Store --output-upload Requisiti

Sottosezione intitolata “Requisiti”

I costruzioni ad-hoc hanno

requisiti minori fewer requirements rispetto alle build di App Store:

AutenticazioneRichiesta?
Certificato di distribuzione (.p12)
Profilo di provisioning ad-hoc (.mobileprovision)
ID del team (--apple-team-id)
Chiave di App Store Connect API (.p8)No
ID chiave di Apple / ID emittenteNo

La creazione di un profilo di provisioning ad-hoc

Sezione intitolata “Creazione di un profilo di provisioning ad-hoc”

Segui gli stessi passaggi come Profilo di provisioning, ma nel passo 5, seleziona Ad Hoc al posto di App Store:

  1. Vai a Profili sviluppatore di Apple
  2. Clicca sul + button
  3. Scegli Ad Hoc e clicca Continua
  4. Seleziona la tua app e il certificato di distribuzione
  5. Seleziona i dispositivi che desideri registrare
  6. Nome e download del profilo
Finestra del terminale
bunx @capgo/cli@latest build credentials save \
--platform ios \
--ios-distribution ad_hoc \
--apple-team-id YOUR_TEAM_ID \
--certificate './certificate.p12' \
--ios-provisioning-profile './adhoc_profile.mobileprovision'

No --apple-key, --apple-key-id, o --apple-issuer-id necessario.

Fermata del terminale
bunx @capgo/cli@latest build request \
--platform ios \
--ios-distribution ad_hoc

Per raccogliere l'IPA come artefatto di build, aggiungi --output-upload:

Fermata del terminale
bunx @capgo/cli@latest build request \
--platform ios \
--ios-distribution ad_hoc \
--output-upload

Per GitHub Actions, hai bisogno di meno segreti rispetto ai build per l'App Store:

github/workflows/ios-adhoc-build.yml
name: iOS Ad-Hoc Build
on:
workflow_dispatch:
jobs:
ios-adhoc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Request iOS ad-hoc build
run: bunx @capgo/cli@latest build request --platform ios --ios-distribution ad_hoc --output-upload
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
APP_STORE_CONNECT_TEAM_ID: ${{ secrets.APP_STORE_CONNECT_TEAM_ID }}
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
CAPGO_IOS_PROVISIONING_MAP: ${{ secrets.CAPGO_IOS_PROVISIONING_MAP_ADHOC }}
CAPGO_IOS_DISTRIBUTION: ad_hoc

Se la tua app include estensioni (estensioni di condivisione, widget, estensioni del servizio di notifica, ecc.), ogni target di estensione necessita di un proprio profilo di provisioning. Capgo supporta questo tramite la flag ripetibile. --ios-provisioning-profile Esempio: App + Estensione di condivisione

Sottosezione intitolata “Esempio: App + Estensione di condivisione”

Fenestra del terminale
Terminal window
bunx @capgo/cli@latest build credentials save \
--platform ios \
--apple-team-id YOUR_TEAM_ID \
--apple-key '/path/to/AuthKey_XXXXX.p8' \
--apple-key-id YOUR_KEY_ID \
--apple-issuer-id YOUR_ISSUER_ID \
--certificate '/path/to/certificate.p12' \
--ios-provisioning-profile "com.example.app=./app_profile.mobileprovision" \
--ios-provisioning-profile "com.example.app.share-extension=./share_ext_profile.mobileprovision"

Ogni --ios-provisioning-profile La bandiera mappa un ID bundle al suo file di provisioning. Il CLI:

  1. Legge ogni file mobileprovision
  2. Auto-strappa il nome del profilo dall'embedded plist
  3. Codifica in Base64 il file
  4. Mantieni tutto come un singolo CAPGO_IOS_PROVISIONING_MAP credenziale

Migrazione da Single Profile

Migrazione da Profilo Singolo

Se hai utilizzato precedentemente BUILD_PROVISION_PROFILE_BASE64 (profilo singolo), esegui:

Fenestra del terminale
bunx @capgo/cli@latest build credentials migrate --platform ios

Questo converte le tue credenziali esistenti di profilo singolo nel nuovo CAPGO_IOS_PROVISIONING_MAP formato e elimina le chiavi legacy (BUILD_PROVISION_PROFILE_BASE64, APPLE_PROFILE_NAME).

Dopo la migrazione, aggiungi profili di estensione con il update comando (merge additivo):

Fenestra del terminale
bunx @capgo/cli@latest build credentials update \
--platform ios \
--ios-provisioning-profile "com.example.app.share-extension=./share_ext_profile.mobileprovision"

Il profilo di provisioning non include la capacità XYZ.

Sezione intitolata “Il profilo di provisioning non include la capacità XYZ.”

A volte, potresti vedere l'errore seguente:

Provisioning profile "YOUR_PROVISIONING_PROFILE_NAME" doesn't include the XYZ capability. (in target 'App' from project 'App')"

Ciò accade perché hai abilitato una nuova capacità dopo la creazione del profilo di provisioning. Il vecchio profilo di provisioning non include ancora la nuova capacità.

Per risolvere questo problema, è necessario rigenerare il profilo di provisioning.

  1. Apri Portale dello sviluppatore Apple
  2. Seleziona il team corretto nella casella a discesa Selezione del team delle chiavi dello sviluppatore Apple
  3. Clicca sul Profiles button button dei profili dello sviluppatore Apple
  4. Trova il profilo di provisioning che desideri rigenerare Cerca profilo di Apple Developer
  5. Clicca sul Edit button Apple Developer modifica profilo
  6. Clicca sul Save button Apple Developer salva profilo
  7. Clicca sul Download button Apple Developer download profilo
  8. Esegui nuovamente il comando di configurazione di build nativo Capgo con il profilo scaricato di recente.

Ciò dovrebbe risolvere il problema.

Se per qualsiasi ragione stai incontrando problemi con Capgo Build nativo, la configurazione delle credenziali o la costruzione dell'app, non esitare a contattarci tramite il nostro supporto.

Continua da iOS Builds

Se stai utilizzando

iOS Builds per pianificare l'automazione CI/CD, connettilo con __CAPGO_KEEP_0__ CI/CD per il flusso di lavoro del prodotto in Capgo CI/CD, Capgo Build nativo per il flusso di lavoro del prodotto in Capgo Build nativo for the product workflow in Capgo Native Builds, Capgo Integrazioni per il flusso di lavoro del prodotto in Capgo Integrazioni, Integrazione CI/CD per la dettagliata implementazione in Integrazione CI/CD, e GitHub Integrazione Azioni per la dettagliata implementazione in GitHub Integrazione Azioni.