Zum Inhalt springen

Fehlersuche

Lösungen für häufige Probleme bei der Erstellung von nativen Apps mit Capgo Cloud Build.

”Hochladen fehlgeschlagen” oder “Verbindungstimeout”

Abschnitt mit dem Titel “”Hochladen fehlgeschlagen” oder “Verbindungstimeout””

Symptome:

  • Projektupload fehlt
  • Zeitüberschreitung nach 60 Sekunden

Lösungen:

  1. Überprüfen Sie Ihre Internetverbindung

    Terminalfenster
    # Test connection to Capgo
    curl -I https://api.capgo.app
  2. Projektsgröße reduzieren

    • Stellen Sie sicher node_modules/ wird nicht hochgeladen (sollte automatisch ausgeschlossen werden)
    • Überprüfen Sie Ihre Projektdateien auf große Dateien:
    Terminalfenster
    find . -type f -size +10M
  3. Überprüfen Sie die Ablaufzeit der Upload-URL

    • Upload-URLs erlöschen nach 1 Stunde
    • Wenn Sie ein Ablaufdatum-URL-Fehler erhalten, führen Sie den Build-Befehl erneut aus

Symptome:

  • Build überschreitet die maximale erlaubte Zeit
  • Status zeigt an timeout

Lösungen:

  1. Optimieren Sie Abhängigkeiten

    • Entfernen Sie nicht benötigte npm-Pakete
    • Verwenden Sie npm prune --production vor der Erstellung
  2. Überprüfen Sie Netzwerkprobleme bei der Erstellung

    • Einige Abhängigkeiten können während der Erstellung große Dateien herunterladen
    • Betrachten Sie eine Vorab-Caching mit einem Lock-File
  3. Überprüfen Sie native Abhängigkeiten

    Terminal-Fenster
    # iOS - check Podfile for heavy dependencies
    cat ios/App/Podfile
    # Android - check build.gradle
    cat android/app/build.gradle
  4. Kontakt Support

    • Wenn Ihre App rechtmäßig mehr Zeit benötigt
    • Wir können Grenzwerte für bestimmte Anwendungsfälle anpassen

”API key invalid” or “Unauthorized”

Section titled “”API key invalid” or “Unauthorized””

Abschnitt mit dem Titel „ oder „Nicht autorisiert““

  • Symptome:
  • Die Erstellung scheitert sofort mit einer Authentifizierungsfehler

401 oder 403 Fehler

  1. Verify API key is correct

    Terminalfenster
    # Test with a simple command
    bunx @capgo/cli@latest app list
  2. Überprüfen Sie die Berechtigungen für die API-Schlüssel

    • Der Schlüssel muss write oder all Überprüfen Sie in der __CAPGO_KEEP_0__-Oberfläche unter __CAPGO_KEEP_1__ Schlüsseln
    • Check in Capgo dashboard under API Keys
  3. Ensure API key is being read

    In die Zwischenablage kopieren
    # Check environment variable
    echo $CAPGO_TOKEN
    # Or check your saved credentials file
    cat ~/.capgo-credentials/credentials.json # global
    cat .capgo-credentials.json # local (--local)
  4. Terminalfenster

    In die Zwischenablage kopieren
    bunx @capgo/cli@latest login

"App nicht gefunden" oder "Keine Berechtigung für diese App"

Überschrift: "App nicht gefunden" oder "Keine Berechtigung für diese App"

Symptome:

  • Authentifizierung funktioniert, aber App-spezifische Fehler

Lösungen:

  1. Überprüfen Sie, ob die App registriert ist

    Terminal-Fenster
    bunx @capgo/cli@latest app list
  2. Überprüfen Sie, ob die App-ID übereinstimmt

    • Überprüfen capacitor.config.json appId
    • Stellen Sie sicher, dass die Befehlszeile den richtigen App-ID verwendet
  3. Überprüfen Sie den Zugriff auf die Organisation

    • Überprüfen Sie, ob Sie sich in der richtigen Organisation befinden
    • API Schlüssel muss Zugriff auf die App-Organisation haben

Symptome:

  • Der Aufbau fehlschlägt während der code-Signierungsphase
  • Xcode-Fehler über Zertifikate oder Profile

Lösungen:

  1. Überprüfen Sie, ob der Zertifikatstyp dem Buildtyp entspricht

    • Entwicklungsbuilds benötigen Entwicklungs-Zertifikate
    • App Store Builds benötigen Verteilungs-Zertifikate
  2. Überprüfen Sie, ob das Zertifikat und das Profil übereinstimmen

    Terminal-Fenster
    # Decode and inspect your certificate
    echo $BUILD_CERTIFICATE_BASE64 | base64 -d > cert.p12
    openssl pkcs12 -in cert.p12 -nokeys -passin pass:$P12_PASSWORD | openssl x509 -noout -subject
  3. Stellen Sie sicher, dass das Provisioning-Profil gültig ist

    • Überprüfen Sie die Ablaufzeit
    • Überprüfen Sie, ob es Ihren App-Id enthält
    • Bestätigen Sie, dass es das Zertifikat enthält
  4. Regenerieren Sie die Anmeldeinformationen

    • Löschen Sie das alte Zertifikat/Profil
    • Erstellen Sie neue im Apple Developer-Portal
    • Re-encode und Umgebungsvariablen aktualisieren

„Provisioning-Profil enthält kein Signaturzertifikat“

Abschnitt mit dem Titel „Provisioning-Profil enthält kein Signaturzertifikat“

Symptome:

  • Xcode kann kein Zertifikat im Profil finden

Lösungen:

  1. Download des neuesten Profils von Apple

    • Gehe zu Apple Developer → Zertifikate, IDs und Profile
    • Download des Provisioning-Profils
    • Stellen Sie sicher, dass es Ihr Zertifikat enthält
  2. Überprüfen Sie, ob das Zertifikat im Profil ist

    Terminalfenster
    # Extract profile
    echo $BUILD_PROVISION_PROFILE_BASE64 | base64 -d > profile.mobileprovision
    # View profile contents
    security cms -D -i profile.mobileprovision
  3. Profil mit korrektem Zertifikat erneut erstellen

    • Im Apple-Entwicklerportal das Profil bearbeiten
    • Stellen Sie sicher, dass Ihr Verteilungszertifikat ausgewählt ist
    • Herunterladen und erneut kodieren

”App Store Connect authentication failed”

Fehler bei der App Store Connect-Authentifizierung

Symptome:

  • Hochladen auf TestFlight fehlt
  • API-Schlüsselfehler

Lösungen:

  1. Überprüfen Sie die API-Schlüsselauthentifizierung

    • Überprüfen Sie die APPLE_KEY_ID (es sollte 10 Zeichen sein)
    • Überprüfen Sie die APPLE_ISSUER_ID (es sollte eine UUID-Format sein)
    • Überprüfen Sie, ob APPLE_KEY_CONTENT korrekt base64-codiert ist
  2. Synchronisieren Sie die Uhr Ihres Computers

    • Die App Store Connect-Authentifizierung verwendet kurzlebige JWTs, die aus Ihrem lokalen Systemzeit generiert werden
    • Apple lehnt Token ab, die mehr als 20 Minuten in der Zukunft ablaufen, daher kann sogar ein kleiner Zeitdrift einen sonst gültigen Schlüssel zum Scheitern bringen
    • Öffnen Sie auf Windows Einstellungen > Zeit und Sprache > Datum und Uhrzeit und klicken Sie auf Jetzt synchronisieren
    • Öffnen Sie auf macOS Systemeinstellungen > Allgemein > Datum & Uhrzeit und aktivieren Sie die automatische Uhrzeit
    • Auf Linux überprüfen Sie timedatectl status und aktivieren Sie NTP, wenn erforderlich
    • Nachdem Sie synchronisiert haben, führen Sie den Capgo-Aufbau oder die Capgo-Anmeldekommando erneut aus

    Siehe Apple’s Token für API-Anfragen generieren Dokumentation für die Lebensdauer des App Store Connect-Tokens

  3. Testen Sie die API-Schlüssel lokal

    Terminal-Fenster
    # Decode key
    echo $APPLE_KEY_CONTENT | base64 -d > AuthKey.p8
    # Test with fastlane (if installed)
    fastlane pilot list
  4. Überprüfen Sie die Berechtigungen für den API-Schlüssel

    • Key benötigt „Entwickler“-Rolle oder höher
    • Überprüfen Sie in App Store Connect -> Benutzer und Zugriff -> Schlüssel
  5. Stellen Sie sicher, dass der Schlüssel nicht zurückgezogen ist

    • Überprüfen Sie in App Store Connect
    • Erstellen Sie einen neuen Schlüssel, wenn erforderlich

Symptome:

  • Die Verarbeitung scheitert während der CocoaPods-Installation
  • Podfile-Fehler

Lösungen:

  1. Überprüfen Sie, ob Podfile.lock im Commit enthalten ist

    Terminalfenster
    git status ios/App/Podfile.lock
  2. Testen Sie die lokale Installation von Pods

    Terminalfenster
    cd ios/App
    pod install
  3. Nach inkompatiblen Pods suchen

    • Überprüfen Sie die Podfile auf Versionskonflikte
    • Stellen Sie sicher, dass alle Pods Ihr iOS-Zielsystem unterstützen
  4. Löschen Sie den Pod-Cache

    Terminalfenster
    cd ios/App
    rm -rf Pods
    rm Podfile.lock
    pod install
    # Then commit new Podfile.lock

Symptome:

  • Das Build-Prozess scheitert während der Signierung
  • Gradle-Fehler über das Keystore

Lösungen:

  1. Überprüfe das Keystore-Passwort

    Terminal-Fenster
    # Test keystore locally
    keytool -list -keystore my-release-key.keystore
    # Enter password when prompted
  2. Überprüfe die Umgebungsvariablen

    Terminal-Fenster
    # Ensure no extra spaces or special characters
    echo "$KEYSTORE_STORE_PASSWORD" | cat -A
    echo "$KEYSTORE_KEY_PASSWORD" | cat -A
  3. Base64-Codierung überprüfen

    Terminalfenster
    # Decode and test
    echo $ANDROID_KEYSTORE_FILE | base64 -d > test.keystore
    keytool -list -keystore test.keystore

Symptome:

  • Mit Aliasfehler beim Signieren

Lösungen:

  1. Liste der Keystore-Aliase

    Terminalfenster
    keytool -list -keystore my-release-key.keystore
  2. Überprüfen Sie, ob der Alias genau übereinstimmt

    • Der Alias ist case-sensitive
    • Überprüfen Sie in KEYSTORE_KEY_ALIAS auf Tippfehler
  3. Verwenden Sie den richtigen Alias aus dem Keystore

    Terminal-Fenster
    # Update environment variable to match
    export KEYSTORE_KEY_ALIAS="the-exact-alias-name"

Symptome:

  • Allgemeine Gradle-Fehler
  • Fehler bei der Kompilierung oder den Abhängigkeiten

Lösungen:

  1. Testen Sie lokal erstellt, bevor Sie fortfahren

    Terminalfenster
    cd android
    ./gradlew clean
    ./gradlew assembleRelease
  2. Überprüfen Sie fehlende Abhängigkeiten

    • Überprüfen Sie die build.gradle-Dateien
    • Stellen Sie sicher, dass alle Plugins in den Abhängigkeiten aufgeführt sind
  3. Überprüfen Sie die Kompatibilität der Gradle-Version

    Terminalfenster
    # Check gradle version
    cat android/gradle/wrapper/gradle-wrapper.properties
  4. Gradle-Cache löschen

    Terminalfenster
    cd android
    ./gradlew clean
    rm -rf .gradle build

Play Store-Upload fehlgeschlagen

Abschnitt: Play Store-Upload fehlgeschlagen

Symptome:

  • Der Build gelingt, aber der Upload fehlschlägt
  • Fehler bei der Dienstkontoinstanz

Lösungen:

  1. Überprüfe die Dienstkontoinstanz-JSON

    Terminal-Fenster
    # Decode and check format
    echo $PLAY_CONFIG_JSON | base64 -d | jq .
  2. Überprüfe die Berechtigungen der Dienstkontoinstanz

    • Gehe zu Play Console → Setup → API Zugriff
    • Stelle sicher, dass die Dienstkontoinstanz Zugriff auf deine App hat
    • Zugriff auf das Release-Track für Tests gewähren
  3. Überprüfen, ob die App im Google Play Console eingerichtet ist

    • Zunächst muss die App im Google Play Console erstellt werden
    • Zumindest eine APK muss manuell hochgeladen werden
  4. Überprüfen, ob API aktiviert ist

    • Google Play Developer API muss aktiviert sein
    • Überprüfen im Google Cloud Console

‘Job nicht gefunden’ oder ‘Build-Status nicht verfügbar’

Abschnitt mit dem Titel ‘‘Job nicht gefunden’ oder ‘Build-Status nicht verfügbar’’

Symptome:

  • Kann den Buildstatus nicht überprüfen
  • Fehler bei der Job-ID

Lösungen:

  1. Warten Sie einen Moment und versuchen Sie es erneut

    • Die Buildjobs können einige Sekunden zum Initialisieren benötigen
  2. Überprüfen Sie, ob die Job-ID korrekt ist

    • Überprüfen Sie die Job-ID aus der ersten Buildantwort
  3. Überprüfen Sie, ob der Build abgelaufen ist

    • Die Build-Daten sind 24 Stunden verfügbar

”Project sync failed”

Fehler beim Projekt synchronisieren

Symptome:

  • Der Build scheitert, bevor die Kompilation beginnt
  • Fehlende Dateien Fehler

Lösungen:

  1. Führe Capacitor lokal synchron aus

    Terminal-Fenster
    bunx cap sync
  2. Stelle sicher, dass alle native Dateien committet sind

    Terminal-Fenster
    git status ios/ android/
  3. Überprüfe nach git-ignorierten native Dateien

    • Überprüfe .gitignore
    • Stelle sicher, dass wichtige Konfigurationsdateien nicht ignoriert werden

”Aufbau erfolgreich, aber keine Ausgabe sichtbar”

Abschnitt: „Aufbau erfolgreich, aber keine Ausgabe sichtbar”

Symptome:

  • Der Aufbau zeigt Erfolg, aber kein Download-Link

Lösungen:

  1. Überprüfe die Aufbauparameter

    • Die Artefakt-Speicherung mag nicht konfiguriert sein
    • Kontaktiere den Support, wenn der Zugriff auf Artefakte für deinen Aufbau nicht verfügbar ist
  2. Für die iOS-Testflug-Submission:

    • Überprüfe App Store Connect
    • Die Verarbeitung kann nach dem Hochladen 5-30 Minuten dauern
  3. Für die Android-Play-Store-Veröffentlichung

    • Überprüfe Play Console → Testing → Internes Testen
    • Die Verarbeitung kann einige Minuten dauern

Symptome:

  • bunx @capgo/cli@latest … Fehler in CI mit „Befehl nicht gefunden“

Lösungen:

  1. Stelle Bun vorher ein dann bunx ist verfügbar:

    - uses: oven-sh/setup-bun@v2
  2. Dann führen Sie den CLI ausbunx es wird es auf Abruf geladen, keine globale Installation erforderlich:

    - run: bunx @capgo/cli@latest build request com.example.app --platform android

Symptome:

  • Umgebungsvariablen leer in der Build

Lösungen:

  1. Überprüfen Sie, ob die Geheimnisse gesetzt sind

    • Gehe zu Repo-Einstellungen → Geheimnisse und Variablen → Aktionen
    • Fügen Sie alle erforderlichen Geheimnisse hinzu
  2. Verwenden Sie die korrekte Syntax

    env:
    CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
  3. Überprüfen Sie, ob die geheimen Namen übereinstimmen

    • Die Namen sind case-sensitive
    • Keine Tippfehler in den geheimen Referenzen
Terminal-Fenster
# Add debug flag (when available)
bunx @capgo/cli@latest build request com.example.app --verbose

Wenn Sie Unterstützung kontaktieren, fügen Sie hinzu:

  1. Benutzter Build-Befehl

    Terminal-Fenster
    bunx @capgo/cli@latest build request com.example.app --platform ios
  2. Fehlermeldung (vollständiger Ausgabe)

  3. Job-ID (aus Build-Ausgabe)

  4. Build-Protokolle (kopieren Sie die vollständige Terminal-Ausgabe)

  5. Umgebungsinformationen

    Terminalfenster
    node --version
    npm --version
    bunx @capgo/cli@latest --version

Aktuelle Einschränkungen:

  • Maximale Aufbauzeit: 10 Minuten
  • Maximale Uploadgröße: ~500 MB
  • iOS-Builds erfordern 24-Stunden-Mac-Mietverträge, der Aufbau auf einem Mac wird in die Warteschlange gelegt, um eine optimale Nutzung sicherzustellen
  • Die Verfügbarkeit von Build-Artefakten hängt von der Build-Zielkonfiguration und der Artefakt-Speicherung ab

Diese Einschränkungen können auf der Grundlage von Feedback angepasst werden