Risolvere Problemi
Copia un prompt di impostazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Soluzioni per problemi comuni quando si costruiscono applicazioni native con Capgo Cloud Build.
Fallimenti di costruzione
Sezione intitolata “Fallimenti di costruzione””Sono fallito l'upload” o “Timeout di connessione”
Sezione intitolata “Sono fallito l'upload” o “Timeout di connessione””Segni distintivi:
- La costruzione fallisce durante l'upload del progetto
- Errori di timeout dopo 60 secondi
Soluzioni:
-
Controlla la tua connessione internet
Fermata della console # Test connection to Capgocurl -I https://api.capgo.app -
Riduci la dimensione del progetto
- Assicurati
node_modules/non viene caricato (dovrebbe essere escluso automaticamente) - Controlla la presenza di file grandi nel tuo progetto:
Finestra del terminale find . -type f -size +10M - Assicurati
-
Controlla la scadenza dell'URL di caricamento
- Gli URL di caricamento scadono dopo 1 ora
- Se ottieni un errore di URL scaduto, ripeti il comando di build
”Timeout di costruzione dopo 10 minuti”
Sezione intitolata “”Timeout di costruzione dopo 10 minuti””Sintomi:
- La costruzione supera il tempo massimo consentito
- Lo stato mostra
timeout
Soluzioni:
-
Optimizza le dipendenze
- Elimina i pacchetti npm non utilizzati
- Utilizza
npm prune --productionprima di costruire
-
Controlla le problematiche di rete durante la costruzione
- Alcune dipendenze possono scaricare file di grandi dimensioni durante la costruzione
- Considerare il pre-caching con un file di blocco
-
Revisionare le dipendenze native
Fenestra del terminale # iOS - check Podfile for heavy dependenciescat ios/App/Podfile# Android - check build.gradlecat android/app/build.gradle -
Contattare il supporto
- Se il tuo app ha effettivamente bisogno di più tempo
- Potremmo adattare i limiti per casi d'uso specifici
Issue di autenticazione
Sintomi:”API key invalid” or “Unauthorized”
"API chiave non valida" o "Non autorizzato"Sezione intitolata ""__CAPGO_KEEP_0__ chiave non valida" o "Non autorizzato""
- Costruisce fallisce immediatamente con errore di autenticazione
- 401 o 403 errori
Soluzioni:
-
Verifica che la chiave API sia corretta
Fenestra del terminale # Test with a simple commandbunx @capgo/cli@latest app list -
Controlla le autorizzazioni della chiave API
- La chiave deve avere
writeoallVerifica che la chiave __CAPGO_KEEP_0__ sia letta correttamente - Verifica in dashboard Capgo sotto API Chiavi
- La chiave deve avere
-
Assicurati che la chiave API sia letta correttamente
Finestra del terminale # Check environment variableecho $CAPGO_TOKEN# Or check your saved credentials filecat ~/.capgo-credentials/credentials.json # globalcat .capgo-credentials.json # local (--local) -
Riaccredita
Finestra del terminale bunx @capgo/cli@latest login
”App not found” or “No permission for this app”
Sezione intitolata " "Sintomi:
- L'autenticazione funziona ma si verifica un errore specifico dell'app
Soluzioni:
-
Verifica che l'app sia registrata
Finestra del terminale bunx @capgo/cli@latest app list -
Verifica che l'ID dell'app corrisponda
- Verifica
capacitor.config.jsonappId - Assicurati che il comando utilizzi l'ID dell'app corretto
- Verifica
-
Verifica l'accesso all'organizzazione
- Verifica di essere nell'organizzazione corretta
- API deve avere accesso all'organizzazione dell'app
Problemi di costruzione per iOS
Sezione intitolata “Problemi di costruzione per iOS””Code signing failed”
Section titled “”Code signing failed””Sintomi:
- Il build fallisce durante la fase di firma code
- Errori di Xcode relativi a certificati o profili
Soluzioni:
-
Verifica che il tipo di certificato corrisponda al tipo di build
- I build di sviluppo richiedono certificati di sviluppo
- I build per l'App Store richiedono certificati di distribuzione
-
Verifica che il certificato e il profilo corrispondano
Finestra del terminale # Decode and inspect your certificateecho $BUILD_CERTIFICATE_BASE64 | base64 -d > cert.p12openssl pkcs12 -in cert.p12 -nokeys -passin pass:$P12_PASSWORD | openssl x509 -noout -subject -
Assicurati che il profilo di provisioning sia valido
- Verifica la data di scadenza
- Verifica che includa il tuo ID App
- Conferma che includa il certificato
-
Regenera le credenziali
- Elimina il vecchio certificato/profilo
- Crea nuove credenziali nel portale dello sviluppatore Apple
- Ricodifica e aggiorna le variabili di ambiente
Profilo di provisioning non include il certificato di firma
Sezione intitolata "Profilo di provisioning non include il certificato di firma"Sintomi:
- Xcode non riesce a trovare il certificato nel profilo
Soluzioni:
-
Scarica il profilo più recente da Apple
- Vai a Apple Developer → Certificati, ID e Profili
- Scarica il profilo di provisioning
- Assicurati che includa il tuo certificato
-
Verifica che il certificato sia presente nel profilo
Finestra del terminale # Extract profileecho $BUILD_PROVISION_PROFILE_BASE64 | base64 -d > profile.mobileprovision# View profile contentssecurity cms -D -i profile.mobileprovision -
Ricrea il profilo con il certificato corretto
- Nel portale di Apple Developer, modifica il profilo
- Assicurati di aver selezionato il tuo certificato di distribuzione
- Scarica e ricodifica
”Autenticazione App Store Connect fallita”
Sezione intitolata “”Autenticazione App Store Connect fallita””Sintomi:
- L'upload su TestFlight fallisce
- Errori di chiave API
Soluzioni:
-
Verifica le credenziali di chiave API
- Controlla APPLE_KEY_ID (dovrebbe essere di 10 caratteri)
- Controlla APPLE_ISSUER_ID (dovrebbe essere nel formato UUID)
- Verifica che APPLE_KEY_CONTENT sia correttamente codificato in base64
-
Sincronizza l'orologio del computer
- L'autenticazione di App Store Connect utilizza token JWT a breve scadenza generati dal tempo del sistema locale
- Apple rifiuta i token che scadranno dopo più di 20 minuti, quindi anche piccoli disallineamenti dell'orologio possono far fallire una chiave altrimenti valida
- Su Windows, apri Impostazioni > Tempo e lingua > Data e ora e cliccare Sincronizza ora
- Su macOS, apri Impostazioni del sistema > Generale > Data e ora e abilita l'orologio automatico
- Su Linux, controlla
timedatectl statuse abilita NTP se necessario - Dopo aver sincronizzato, ripeti la costruzione o la richiesta di credenziali Capgo
Vedi la documentazione di Apple per Generazione di token per richieste API la regola di durata del token per l'accesso all'App Store Connect.
-
Testa la chiave API localmente
Fenestra del terminale # Decode keyecho $APPLE_KEY_CONTENT | base64 -d > AuthKey.p8# Test with fastlane (if installed)fastlane pilot list -
Verifica i permessi della chiave API
- La chiave richiede il ruolo 'Developer' o superiore
- Verifica in App Store Connect -> Utenti e accesso -> Chiavi
-
Assicurati che la chiave non sia revocata
- Verifica in App Store Connect
- Genera una nuova chiave se necessario
”Installazione Pod fallita”
Sottosezione intitolata “”Installazione Pod fallita””Sintomi:
- I problemi di costruzione si verificano durante l'installazione di CocoaPods
- Errori in Podfile
Soluzioni:
-
Verifica che Podfile.lock sia stato commesso
Finestra del terminale git status ios/App/Podfile.lock -
Testa l'installazione di pod localmente
Finestra del terminale cd ios/Apppod install -
Controlla per pods incompatibili
- Verifica Podfile per conflitti di versione
- Assicurati che tutti i pods supportino il tuo target di distribuzione iOS
-
Cancella cache del pod
Finestra del terminale cd ios/Apprm -rf Podsrm Podfile.lockpod install# Then commit new Podfile.lock
Problemi di costruzione per Android
Sezione intitolata “Problemi di costruzione per Android””Keystore password incorrect”
Password della chiave di sicurezza errata”Sezione intitolata “”Password della chiave di sicurezza errata””
- Sintomi:
- La costruzione fallisce durante la firma
Errori di Gradle sulla chiave di sicurezza
-
Soluzioni: Verifica la password della chiave di sicurezza
Finestra del terminale # Test keystore locallykeytool -list -keystore my-release-key.keystore# Enter password when prompted -
Verifica le variabili di ambiente
Finestra del terminale # Ensure no extra spaces or special charactersecho "$KEYSTORE_STORE_PASSWORD" | cat -Aecho "$KEYSTORE_KEY_PASSWORD" | cat -A -
Verifica l'encoding base64
Finestra del terminale # Decode and testecho $ANDROID_KEYSTORE_FILE | base64 -d > test.keystorekeytool -list -keystore test.keystore
Chiave alias non trovata
Sezione intitolata “Chiave alias non trovata”Sintomi:
- La firma fallisce con errore di alias
Soluzioni:
-
Elenco degli alias del keystore
Finestra del terminale keytool -list -keystore my-release-key.keystore -
Verifica che l'alias corrisponda esattamente
- L'alias è case-sensitive
- Controlla di non aver commesso errori di ortografia in KEYSTORE_KEY_ALIAS
-
Utilizza l'alias corretto dal keystore
Finestra del terminale # Update environment variable to matchexport KEYSTORE_KEY_ALIAS="the-exact-alias-name"
”Esecuzione del build di Gradle fallita”
Sezione intitolata “”Esecuzione del build di Gradle fallita””Sintomi:
- Errori Gradle generici
- Problemi di compilazione o di dipendenze
Soluzioni:
-
Esegui prima una costruzione locale
Finestra del terminale cd android./gradlew clean./gradlew assembleRelease -
Controlla le dipendenze mancanti
- Verifica i file build.gradle
- Assicurati che tutti i plugin siano elencati nelle dipendenze
-
Verifica la compatibilità della versione di Gradle
Finestra del terminale # Check gradle versioncat android/gradle/wrapper/gradle-wrapper.properties -
Pulisci cache Gradle
Finestra del terminale cd android./gradlew cleanrm -rf .gradle build
”Errore di caricamento su Play Store”
Sezione intitolata “”Errore di caricamento su Play Store””Sintomi:
- La costruzione ha successo ma il caricamento fallisce
- Errori di account di servizio
Soluzioni:
-
Verifica il file JSON dell'account di servizio
Finestra del terminale # Decode and check formatecho $PLAY_CONFIG_JSON | base64 -d | jq . -
Verifica le autorizzazioni dell'account del servizio
- Vai a Console di Gioco → Configurazione → API Accesso
- Assicurati che l'account del servizio abbia accesso alla tua app
- Concedi la
-
Rilascio ai percorsi di testing
- Verifica che l'app sia configurata nella Console di Gioco
- L'app deve essere creata nella Console di Gioco prima
-
Check API is enabled
- Verifica che API sia abilitato
- Il Google Play Developer __CAPGO_KEEP_0__ deve essere abilitato
Verifica nella Console di Google Cloud
Sezione intitolata “Problemi generali””Non trovato il lavoro” o “Stato di costruzione non disponibile”
Sezione intitolata “Non trovato il lavoro” o “Stato di costruzione non disponibile””Sintomi:
- Impossibile verificare lo stato di costruzione
- Errori di ID del lavoro
Soluzioni:
-
Attendere un momento e riprovare
- Il lavoro di costruzione potrebbe richiedere alcuni secondi per inizializzare
-
Verificare che l'ID del lavoro sia corretto
- Verificare l'ID del lavoro dalla risposta di costruzione iniziale
-
Verificare che la costruzione non sia scaduta
- I dati di costruzione sono disponibili per 24 ore
”Fallito il sincronizzazione del progetto”
Sezione intitolata “”Fallito il sincronizzazione del progetto””Sintomi:
- Il costruzione fallisce prima che inizi la compilazione
- Errori di file mancanti
Soluzioni:
-
Esegui Capacitor sincronizzazione localmente
Finestra del terminale bunx cap sync -
Assicurati che tutti i file nativi siano stati commessi
Finestra del terminale git status ios/ android/ -
Controlla i file nativi ignorati dal Git
- Recensisci .gitignore
- Assicurati che i file di configurazione importanti non siano ignorati
”Il build è riuscito, ma non vedo l'output”
Sezione intitolata “”Il build è riuscito, ma non vedo l'output””Sintomi:
- La build mostra successo ma non c'è link di download
Soluzioni:
-
Controlla la configurazione della build
- L'archiviazione degli artefatti potrebbe non essere configurata
- Contatta il supporto se l'accesso agli artefatti non è disponibile per la tua build
-
Per la sottoscrizione di TestFlight di iOS
- Controlla App Store Connect
- Il processo potrebbe richiedere 5-30 minuti dopo l'upload
-
Per il Play Store Android
- Controlla Play Console → Testing → Internal testing
- Il processo potrebbe richiedere alcuni minuti
Issue specifici di CI/CD
Sottosezione intitolata “Issue specifici di CI/CD”GitHub Azioni: “Comando non trovato”
Sottosezione intitolata “GitHub Azioni: “Comando non trovato””Sintomi:
bunx @capgo/cli@latest …fallisce in CI con “comando non trovato”
Soluzioni:
-
Configura Bun prima così
bunxè disponibile:- uses: oven-sh/setup-bun@v2 -
Esegui poi il comando CLI —
bunxlo carica a richiesta, non è necessaria l'installazione globale:- run: bunx @capgo/cli@latest build request com.example.app --platform android
GitHub Azioni: “Segreti non trovati”
Sezione intitolata “GitHub Azioni: “Segreti non trovati””Sintomi:
- Variabili di ambiente vuote nella build
Soluzioni:
-
Verifica che i segreti siano impostati
- Vai alle impostazioni del repository → Segreti e variabili → Azioni
- Aggiungi tutti i segreti richiesti
-
Utilizza la sintassi corretta
env:CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }} -
Controlla che i nomi dei segreti corrispondano
- I nomi sono case-sensitive
- Nessi errori di ortografia nelle referenze ai segreti
Ottenere Maggiore Aiuto
Sezione intitolata “Ottenere Maggiore Aiuto”Abilita la registrazione dettagliata
Sezione intitolata “Abilita logging dettagliato”# Add debug flag (when available)bunx @capgo/cli@latest build request com.example.app --verboseRaccogli informazioni di costruzione
Sezione intitolata “Raccogli informazioni di costruzione”Quando contatti il supporto, includi:
-
Comando di costruzione utilizzato
Finestra del terminale bunx @capgo/cli@latest build request com.example.app --platform ios -
Messaggio di errore (output completo)
-
ID del lavoro (dalla output di costruzione)
-
Log dei build (copia tutta l'output del terminale)
-
Informazioni sull'ambiente
Finestra del terminale node --versionnpm --versionbunx @capgo/cli@latest --version
Contattare il Supporto
Discord- Unisciti alla nostra community: Email
- supporto@__CAPGO_KEEP_0__.app: support@capgo.app
- Documentazione: Capgo Docs
Limitazioni note
Sottosezione intitolata “Limitazioni note”Limitazioni correnti:
- Tempo massimo di costruzione: 10 minuti
- Dimensione massima di caricamento: ~500MB
- Il costruire per iOS richiede 24 ore di leasing Mac, il costruire su Mac si metterà in coda per garantire l'uso ottimale
- L'accessibilità del download degli artefatti di costruzione dipende dalla destinazione di costruzione e dalla configurazione di archiviazione degli artefatti
Queste limitazioni possono essere aggiustate in base alle risposte dei clienti.
Prescan ha bloccato la mia costruzione
Sottosezione intitolata “Prescan ha bloccato la mia costruzione”Capgo esegue un prescan locale prescan Esegue un prescan locale prima dell'upload. Correggi il problema segnalato o ignora solo quel controllo id:
npx @capgo/cli@latest build request <appId> --platform ios \ --prescan-skip ios/capacitor-server-url-shippedVedi il catalogo completo: I controlli del prescan.
Risorse aggiuntive
Sezione intitolata “Risorse aggiuntive”- Avvio rapido - Guida di avvio rapido
- Costruzioni iOS - Configurazione specifica per iOS
- Costruzioni Android - Configurazione specifica per Android
- Verifiche di prescan - Elenco completo delle verifiche pre-costruzione e delle flag di ignorazione
- CLI Riferimento - Documentazione completa del comando