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
  • Imparerai a configurare i certificati per Capgo Native Build
  • Un account Capgo (un'offerta di prova gratuita è 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 configurare 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)
  • Il tuo app deve poter essere costruito con successo tramite Xcode
  • Un'app Capacitor
  • Un'icon configurata per l'app. Le app senza un'icon non possono essere caricate sul 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 / Proprietario 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 vincolare l'organizzazione agli accordi di Apple
  • Usa un account che possa 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 di supporto, URL della politica sulla privacy, classificazione di età, screenshot, conformità all'esportazione e dettagli di contatto per la revisione di App
Iscriviti all'iscrizione all'Apple Developer Continua l'iscrizione all'Apple sul web Seleziona il tipo di entità Apple Developer 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 nel fare una costruzione manuale prima:

  • Configurerete il certificato di distribuzione sul vostro computer locale
  • Creerete il record dell'App Store se non l'avete già fatto
  • Potrete risolvere eventuali problemi con il processo di costruzione collegati 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.

  1. Apri Xcode

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

    Impostazioni Xcode

  3. Vai a Accounts Pannello 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. Il certificato 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 costruzione.

  1. Apri l'app in Xcode

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

  2. Trova e clicca sul archive tasto

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

    Barra degli strumenti di Xcode

  3. Aspettate che la costruzione sia completa

  4. Clicca sul Distribute App tasto

    tasto di distribuzione Xcode

  5. Seleziona TestFlight Internal Only come metodo di distribuzione e clicca su Distribute tasto

    metodo di distribuzione Xcode TestFlight interno solo

  6. Configura il record dell'app

    Riempi i seguenti campi:

    1. Nome: Il nome della tua app - visibile nella App Store
    2. SKU - il codice SKU 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. Scegli il team che hai utilizzato quando hai creato il record dell'app. Se hai solo un account di sviluppatore, puoi saltare questo passaggio. Scegli il team di App Store Connect

  4. Clicca su Apps button App Store Connect apps button

  5. Cerca l'app che hai creato nel passaggio precedente e clicca su di essa Scegli l'app di App Store Connect

  6. Clicca su TestFlight button Scegli App Store Connect testflight button

  7. Clicca su Internal Testers plus button App Store Connect internal testers pulsante del più

  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 casella di selezione

  11. Verifica che sei stato aggiunto al gruppo

    Ora dovresti vederti 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 devi promettere a Apple che la tua app non utilizza alcuna crittografia non standard (come un algoritmo personalizzato). Se la tua app utilizza effettivamente alcuna crittografia non standard, ti consiglio di leggere il documento di Apple sulla gestione di questo aspetto. Ci sono due modi per farlo:

  1. Puoi farlo a mano ogni volta che costruisci l'app.
  2. Puoi configurare il file plist per impostare automaticamente questo valore su false.

Iniziamo con il primo:

  1. Segui tutte le fasi 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 la costruzione con informazioni di conformità mancanti e clicca su Manage App Store Connect gestisci costruzione

  4. Seleziona l'opzione che meglio descrive la tua app

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

    App Store Connect salva informazioni di conformità

  5. La tua 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

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

  1. Scarica l'app TestFlight dall'App Store sul tuo dispositivo iOS/iPadOS
  2. Accetta l'invito per testare il tuo app

Tralascerò i dettagli su come installare l'app 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 TestFlight

  3. Clicca sul Install button button di installazione di TestFlight

  4. Installa l'app sul tuo dispositivo

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

  5. Aspetta che l'app si installi

  6. Clicca sul Open button e cliccalo

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

Ci 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 (trovabile in Portale dello Sviluppatore Apple)
--apple-keyPercorso del tuo file di chiave API di App Store Connect (.p8 file)
--apple-key-idL'ID di chiave del tuo file di chiave API di App Store Connect
--apple-issuer-idIl tuo ID emittente di 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:

Finestra 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'

Vai a

  1. Account Apple Developer e scorri verso il basso Trova il

  2. Find the team ID in your Apple Developer Account and scroll down to find it. Team ID

    Posizione ID del team nel account del developer

Ora, passiamo alla chiave Apple.

  1. Accedi a pagina di accesso e account 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 Scegli la squadra Apple Developer
  3. Clicca sul Integrations tasto Integrazioni App Store Connect

  4. Trova il issuer

    Clicca sul copy tasto per copiare l'emittente App Store Connect copia emittente

  5. Clicca sul pulsante + App Store Connect pulsante aggiungi chiave

  6. Imposta il nome della chiave e impostare l'accesso a App manager e clicca sul Generate tasto Aggiungi nome chiave a App Store Connect, impostare l'accesso al gestore dell'app e generare il 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 di 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 come 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) Cerca il certificato in Keychain Access

  4. Fai clic destro sul certificato e seleziona Export Esporta il certificato in 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 aver impostato 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 password

    Quando ti viene chiesto la “password della chiave di accesso”, inserisci la password che utilizzi per accedere al tuo Mac.

  7. dialogo di salvataggio del certificato di Accesso alla chiave password

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

    L'accesso alla chiave di archiviazione salva la chiave di certificato di accesso alla chiave di archiviazione della password

Congratulazioni 🎉 Hai esportato il certificato.

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

  1. Vai a Profili sviluppatori di Apple

  2. Seleziona l'equipe corretta dal menu a discesa

    1. Clicca sul tuo nome nell'angolo in alto a destra
    2. Clicca sull'equipe che desideri 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 la tua app nel menu a discesa e clicca sul Continue button

    Apple Developer seleziona app

  7. Seleziona il certificato di distribuzione corretto

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

    Apple Developer seleziona certificato di distribuzione

    Se sei incerto su quale certificato selezionare, torna a Keychain Access e trova il certificato che hai esportato. Poi controlla la data di scadenza.

    Apple Developer seleziona data di scadenza del certificato di distribuzione

  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 Native Build.

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

Il comando che dovrai eseguire è:

Fermata dei comandi
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

__CAPGO_KEEP_2__

Capgo CLI credenziali di accesso salvare 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 GitHub Actions e variabili di ambiente.

Fermata di comando
# 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

Inserisci: GitHub > Repository > Settings > Secrets and variables > Actions, aggiungi:

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)La tua .p12 password se impostata durante l'esportazione

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

Sottosezione intitolata “3) Utilizza le variabili di ambiente nei tuoi GitHub Actions workflow”
.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:

Fermata di sistema
bunx @capgo/cli@latest build request --platform ios

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

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

Fermata di comando
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 di password app-specific e ad_hoc la distribuzione non possono sottoporre un build per la revisione. --store-release-name è la versione di App Store; se omesso, Capgo legge MARKETING_VERSION dal progetto Xcode. --store-release-notes è il testo 'What’s New' di App Store di default, e ogni --store-release-notes-locale "locale=notes" ingresso può sovrascriverlo per una localizzazione di store. Utilizza --ios-automatic-release rilasciare automaticamente dopo l'approvazione di Apple, o --no-ios-automatic-release attendere un 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 crea applicazioni iOS per la distribuzione su App Store (TestFlight + App Store). Se hai bisogno di costruzioni 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 Store App --output-upload Requisiti

Sottosezione intitolata “Requisiti”

I costruzioni ad-hoc hanno

poche richieste poche richieste 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 rilasciatoreNo

Segui le stesse istruzioni come Profilo di provisioning, ma nel passo 5, seleziona Ad Hoc al posto di App Store:

  1. Vai a Profili sviluppatori 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-ido --apple-issuer-id necessario.

Fermata di comando
bunx @capgo/cli@latest build request \
--platform ios \
--ios-distribution ad_hoc

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

Fermata di comando
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 di 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
Nota che non sono necessari per le costruzioni ad-hoc.
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 profilo 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:

Fermata di comando
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 rimuove le chiavi legacy (BUILD_PROVISION_PROFILE_BASE64, APPLE_PROFILE_NAME).

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

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

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à.

  1. Per risolvere questo problema, devi rigenerare il profilo di provisioning. Apri
  2. Portale dello sviluppatore Apple Seleziona il team corretto nel menu a discesa
  3. Selezione team chiavi dello sviluppatore Apple Profiles Clicca sul tasto
  4. Button dei profili dello sviluppatore Apple Trova il profilo di provisioning che desideri rigenerare
  5. Trova profilo dello sviluppatore Apple e rigenera il profilo di provisioning e clicca sul Edit button modifica il profilo di Apple Developer
  6. Clicca sul Save button salva il profilo di Apple Developer
  7. Clicca sul Download button Scarica il profilo di Apple Developer
  8. Esegui nuovamente il comando di configurazione di build nativa Capgo con il profilo appena scaricato.

Ciò dovrebbe risolvere il problema.

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

Se stai utilizzando iOS Builds per pianificare l'automazione CI/CD, connettilo con Capgo 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, Integrazioni Capgo per il workflow del prodotto in Integrazioni Capgo Integrazione CI/CD per i dettagli di implementazione in Integrazione CI/CD Integrazione GitHub Azioni per i dettagli di implementazione in Integrazione GitHub Azioni.