Wollen Sie schnellere und fehlerfreie App-Veröffentlichungen für iOS und Android? CI/CD-Pipelines für Capacitor Apps automatisieren Sie das Bauen, Testen und Bereitstellen, wodurch die Veröffentlichungszeit um bis zu 70% und die Fehler um 60% reduziert wird. Diese Anleitung deckt alles ab, von der Einrichtung Ihrer Umgebung bis hin zum Automatisieren von Live-Updates mit Capgo.
Hauptpunkte:
- Weshalb CI/CD für Capacitor Apps: Beschleunigt die Builds um 78 % und reduziert die Store-Ablehnungen um 60 %.
- Essentielle Werkzeuge: Xcode, Android Studio, CocoaPods, und mehr.
- Pipeline-Einrichtung: Automatisiert Aufgaben wie
npx cap sync, Abhängigkeits-Caching und plattform-spezifische Builds. - Live-Updates mit Capgo: Aktiviere post-release-Updates mit phasenweisen Rollouts und Rollover-Sicherungen.
Schnelle Einrichtungsschritte:
- Vorbereitung Ihrer UmgebungInstallieren Sie die erforderlichen Tools für iOS und Android.
- Konfigurieren Sie Ihr Projekt: Update
capacitor.config.tsund verwalten Sie Umgebungsvariablen sicher. - Build-Pipelines: Automatisieren Sie die Installation von Abhängigkeiten, Builds und Tests für beide Plattformen.
- Optimieren Sie die Leistung: Verwenden Sie Caching, parallele Builds und bedingte Workflows.
- Fügen Sie Live-Updates hinzu: Integrieren Sie Capgo für sichere, OTA-Updates mit phasenweisen Rollouts.
Mit CI/CD erreichen Capacitor-Apps schnellere, glattere Releases, während Fehler und manuelle Intervention minimiert werden. Zeit für die Optimierung Ihres Workflows?
Integrieren Sie Ihre bestehenden CI/CD Pipelines mit mobilen Funktionen
Vorbereitung Ihres CI/CD-Umgebungs
Einmal haben Sie die Grundlagen von CI/CD verstanden, ist der nächste Schritt die Einrichtung Ihrer Umgebung. Dies ist die Grundlage für zuverlässige Automatisierung.
Tools und Software-Setup
Sorgen Sie dafür, dass diese wichtigen Werkzeuge installiert sind:
Für iOS-Entwicklung:
- Xcode 14 oder neuer
- Xcode Command Line Tools
- CocoaPods für die Verwaltung von Abhängigkeiten
Für Android-Entwicklung:
- Android Studio
- Android SDK 33 oder höher
- Java-Entwicklungskit (JDK)
Um sicherzustellen, dass Ihre Xcode Command Line Tools installiert sind, verwenden Sie:
xcode-select -p
Erstellen Sie ein Capacitor Projekt

Ihr Capacitor-Projekt muss korrekt konfiguriert sein, um CI/CD-Workflows zu unterstützen. Das capacitor.config.ts Datei ist das Herz dieses Setup:
const config: CapacitorConfig = {
appId: 'com.example.app',
webDir: 'build',
ios: {
scheme: 'MyApp'
}
}
Diese Datei stellt sicher, dass Ihr Projekt den CI/CD-Anforderungen entspricht.
Umgebungsvariablen einrichten
Die sichere Verwaltung von Zugriffscodes ist ein wichtiger Aspekt bei der Verbindung Ihrer Umgebungsanpassungen mit der CI/CD-Pipeline.
Schlüsselvariablen definieren:
BUILD_ENV: Legt die Bereitstellungsbühne fest (z.B.production)IOS_SIGNING_IDENTITY: Ihr code-SignierungszertifikatANDROID_KEYSTORE_PATH: Pfad zu Ihrem Android-Keystore
Für Android-Builds dynamisch eine local.properties Datei während des CI-Prozesses:
echo "sdk.dir=$ANDROID_SDK_ROOT" > android/local.properties
Wenn Sie mit iOS-Builds arbeiten, stellen Sie sicher, dass Ihr CI-Plattform macOS-Agenten unterstützt.
Um zu überprüfen, ob Ihre Umgebung bereit ist:
node --version | grep "v16" && xcodebuild -version | grep "Xcode 14" || exit 1
Erfolgreiches Key- und Kreditwesen kann die Chancen auf App-Store-Ablehnungen erheblich senken, wie in früheren Statistiken erwähnt. [1].
Erstellen Sie Ihre CI/CD-Pipeline
Einmal Ihre Umgebung vorbereitet, ist der nächste Schritt die Einrichtung eines CI/CD-Pipelines für Ihr Capacitor-Anwendungsprojekt. Diese Pipeline sollte die Verwaltung von Web-Assets und native Plattform-Builds effizient steuern.
Installieren und Aktualisieren von Abhängigkeiten
In CI/CD-Umgebungen erfordert die Verwaltung von Abhängigkeiten eine strikte Versionskontrolle. Beginnen Sie mit einem sauberen Installationsprozess:
npm install --ignore-scripts
npm install @capacitor/cli
Um die Build-Zeit zu verkürzen, verwenden Sie eine Abhängigkeits-Cache. Zum Beispiel Azure DevOps Benutzer haben mit dieser Konfiguration eine Reduzierung der Build-Zeiten um 40-60% gesehen:
- task: Cache@2
inputs:
key: 'npm | "$(Agent.OS)" | package-lock.json'
path: |
node_modules
android/.gradle
ios/Pods
iOS- und Android-Build-Einrichtung
Hier erfahren Sie, wie Sie die Builds für beide Plattformen einrichten:
iOS-Build-Konfiguration:
steps:
- task: InstallAppleCertificate@2
inputs:
certSecureFile: 'certificate.p12'
certPwd: $(P12_PASSWORD)
- script: |
xcodebuild -workspace ios/App/App.xcworkspace -scheme App -configuration Release -archivePath ios/App/App.xcarchive archive
Android-Build-Konfiguration:
cd android
./gradlew bundleRelease
Test- und Bereitstellungsschritte
Führen Sie Plattformtests parallel mit einer Matrixstrategie aus:
test:
steps:
- run: npm run test:unit
- run: npm run test:e2e
- name: Run Platform Tests
matrix:
platform: [ios, android]
run: npm run test:${{ matrix.platform }}
Für die Bereitstellung müssen Sie Plattform-spezifische Artefaktverwaltung einrichten:
| Plattform | Artefakttyp | Verteilungschannel |
|---|---|---|
| iOS | .ipa | App Store Connect |
| Android | .aab | Google Play Console |
Mit parallelen Builds kann die Ausführungszeit des Pipelines erheblich reduziert werden, wenn sie richtig konfiguriert sind.
Sobald Ihre Builds validiert und verpackt sind, sind Sie bereit, sich auf Live-Updates mit Capgo (erörtert im nächsten Abschnitt) zu konzentrieren.
sbb-itb-f9944d2
Hinzufügen Capgo Live-Updates

Die Integration von Capgo in Ihren Workflow verbessert Ihren CI/CD-Prozess, indem sie postrelease-Updates ermöglicht. Hier erfahren Sie, wie Sie es einrichten:
Capgo Pipeline-Konfiguration
Zuerst installieren Sie das Capgo CLI in Ihrem Pipeline-Umgebung:
steps:
- name: Install Capgo CLI
run: npm install -g @capgo/cli
- name: Configure Authentication
env:
CAPGO_KEY: ${{ secrets.CAPGO_API_KEY }}
Diese Erweiterung verlängert Ihr CI/CD-Zyklus, indem sie Update-Verwaltung im automatisierten Build- und Bereitstellungsprozess integriert.
Als Nächstes fügen Sie den Upload-Befehl nach Ihren Build-Schritten ein:
- name: Upload Update
run: |
capgo upload --api-key $CAPGO_KEY --bundle ./build/app-release.apk
capgo deploy v${VERSION} --channel production
Für sichere Updateskonfigurieren Sie die Validierungs-Einstellungen wie folgt:
{
"verification": {
"checksum": "strict",
"certificatePinning": true,
"updateTimeout": 500
}
}
Capgo Features Übersicht
| Funktion | Beschreibung |
|---|---|
| End-to-End-Verschlüsselung | Signifikant reduziert Fehler bei der Bereitstellung. |
| Kanalbasierte Bereitstellung | Anpasset Updates auf bestimmte Umgebungen. |
| Phasenweise Bereitstellung | Stellt sicher, dass Updates allmählich verteilt werden. |
Anleitung zur OTA-Update
Verbessern Sie Ihre Testprozesse, indem Sie diese Schlüsselmetriken nach der Bereitstellung verfolgen:
Phasenweise Bereitstellungsstrategie
Verwenden Sie eine rollierende Veröffentlichung, um die Verteilung von Updates zu steuern:
- name: Staged Rollout
run: |
capgo deploy v1.2.3 --group "beta-users" --rollout 10%
capgo deploy v1.2.3 --rollout 50%
Update-Überwachung
Bleiben Sie auf diese Metriken achten:
- Adoptionsrate: Ziel ist eine Rate von 40-60% innerhalb der ersten 24 Stunden.
- Crash-freie Sitzungen: Erreichen Sie über 99,5%.
- VerifizierungszeitStelle sicher, dass es unter 500ms liegt.
Wenn Crashs über akzeptable Grenzen liegen, automatisieren Sie einen Rollback:
- name: Rollback Check
run: |
if [ $(capgo stats --version v1.2.3 --metric crashes) -gt 2 ]; then
capgo rollback --channel production
fi
Verbesserung der Pipeline-Leistung
Fokussieren Sie sich auf drei Schlüsselfaktoren, um eine merkliche Verbesserung in Ihrer Pipeline zu erzielen:
Optimierung der Build-Geschwindigkeit
Für Web-Änderungen nur, können Sie mit npx cap sync Kann Zeit sparen, indem vollständige native Rebuilds ausgelassen werden, die Rebuildzeit um etwa 40% reduziert. Hier erfahren Sie, wie Sie bedingte Builds implementieren können.
- name: Build Strategy
run: |
[ "$WEB_ONLY" = true ] && npx cap sync || (./gradlew assembleRelease && xcodebuild ...)
Dieser Ansatz stellt sicher, dass nur die notwendigen Komponenten neu erstellt werden, was den Prozess vereinfacht.
Automatisierung der Versionskontrolle
Automatisieren Sie die Versionskontrolle, um Ihre Arbeitsabläufe zu vereinfachen. Verwenden Sie das folgende Skript, um Version- und Buildnummern dynamisch zu setzen:
- name: Set Version
run: |
VERSION=$(node -p "require('./package.json').version")
BUILD_NUMBER=$GITHUB_RUN_NUMBER
echo "APP_VERSION=${VERSION}" >> $GITHUB_ENV
echo "BUILD_ID=${BUILD_NUMBER}" >> $GITHUB_ENV
Zusätzlich kann die automatisierte semantische Versionsnummerierung mit dieser Konfiguration eingerichtet werden:
{
"scripts": {
"version": "standard-version",
"build:prod": "npm version patch && ionic build --prod"
}
}
Diese Praktiken bieten einen soliden Rahmen für die Erfassung und Verbesserung der Pipelineleistung über Metriken wie:
- Zeit pro Bauabschnitt
- Cache-Effizienz (Hitz-/Fehlerraten)
- Peak-Ressourcenverbrauch
Mehrfach-Umgebungs-Setup
Die Verwaltung mehrerer Umgebungen kann durch die Verwendung umgebungsbezogener Konfigurationen vereinfacht werden. Hier ist ein Beispiel-Setup:
| Umgebung | Konfigurationsdatei |
|---|---|
| Entwicklung | .env.dev |
| Staging | .env.staging |
| Production | Secure-Speicher |
Sie können die Umgebungen dynamisch mit diesem Skript konfigurieren:
- name: Configure Environment
env:
API_KEY: ${{ secrets.ENV_SPECIFIC_API_KEY }}
BUNDLE_ID: ${{ parameters.bundleId }}
run: |
echo "ENVIRONMENT=${{ parameters.environment }}" >> $GITHUB_ENV
echo "API_ENDPOINT=${{ parameters.apiUrl }}" >> $GITHUB_ENV
Indem Sie diese Konfigurationen mit dem Capgo-Kanal basierten Update-Verfahren kombinieren, können Sie präzise, umgebungsbezogene Updates durchführen. Dies gewährleistet glattere Rollouts und eine bessere Kontrolle über die Anwendungsverhalten in verschiedenen Umgebungen.
Zusammenfassung
Die Rolle der CI/CD im Entwicklungsprozess
Die Verwendung von CI/CD-Pipelines für Capacitor-Anwendungen erhöht die Effizienz des Workflow um ein Vielfaches. Nach Angaben von Branchenstudien können Teams 50-70% schnellere Release-Zyklen dank gleichzeitiger iOS- und Android-Builds [3]Automatisierung von Aufgaben wie der Abhängigkeitsinstallation und der Plattformsynchronisierung reduziert Fehler bei der Bereitstellung. 40-60% [1][2].
Ein Beispiel hierfür sind Teams, die Azure DevOps-Pipelines nutzen, um Prozesse wie sequenzielle Build-Schritte und Xcode-Pakete zu automatisieren. Sie verwenden auch parametrisierte Umgebungen für Entwicklung und Produktion. Diese Vorgehensweise eliminiert die Notwendigkeit manueller Gradle- und Xcode-CLI-Operationen, um sicherzustellen, dass Artefakte jederzeit zuverlässig erstellt werden.
Diese Verbesserungen legen den Grundstein für eine effizientere Update-Verwaltung, wenn sie mit Capgo kombiniert werden.
Capgo für Update-Management
Capgo funktioniert reibungslos mit CI/CD-Pipelines, um sofortige Updates bereitzustellen, während die Einhaltung von Richtlinien der App-Stores gewährleistet wird. Updates werden nur nachdem sie die automatisierten Testgitter durchlaufen haben, die in die Pipeline integriert sind.
Indem automatisierte Builds mit phasenweisen Rollouts kombiniert werden, können Teams beeindruckende Ergebnisse erzielen: 80% Benutzerabdeckung innerhalb von 7 Tagen und Rollback-Funktionen innerhalb von einer Stunde.
Ein gängiges Vorgehen besteht darin, parallel laufende Bereitstellungs-Tracks zu betreiben. Automatisierte Builds werden für interne Tests verwendet, während phasenweise Rollouts auf Benutzersegmente abzielen. Dies stellt sicher, dass Updates sowohl schnell als auch sicher sind, unterstützt durch strenge automatisierte Testgitter. [1].
FAQs
Auf welche Weise kann ein Capacitor-App erstellt werden?
Die Erstellung eines Capacitor-Apps umfasst einige einfache Schritte:
-
Konfiguration Ihrer Umgebung: Installieren Sie Node.js und npm auf Ihrem System. Dann verwenden Sie den Ionic CLI , um ein neues Projekt mit Capacitor-Unterstützung zu starten:
ionic start myApp tabs --capacitor -
Hinzufügen von PlattformunterstützungFügen Sie die Plattformen hinzu, die Sie unterstützen möchten, wie iOS oder Android:
npx cap add ios npx cap add android -
Synchronisieren Sie Ihr Web-codeStellen Sie sicher, dass Ihre Web code mit den nativen Plattformen übereinstimmt, indem Sie ausführen:
npx cap sync
Der Synchronisierungsprozess ist entscheidend, um sicherzustellen, dass Ihre App konsistent ist und reibungslos in CI/CD-Pipelines läuft. Weitere Informationen zur Einrichtung Ihrer Umgebung finden Sie in der Tools-Sektion.
Fortsetzen Sie mit der Einrichtung von CI/CD für Capacitor-Anwendungen
Wenn Sie __CAPGO_KEEP_0__ verwenden Einrichten von CI/CD für Capacitor-Anwendungen um die CI/CD-Automatisierung zu planen, mit ihr zu verbinden Capgo CI/CD um den Produktworkflow in Capgo CI/CD Capgo Native Builds um den Produktworkflow in Capgo Native Builds Capgo-Integrationen für den Produktworkflow in Capgo-Integrationen CI/CD-Integration für die Implementierungsdetails in CI/CD-Integration, und GitHub-Aktionen-Integration für die Implementierungsdetails in GitHub-Aktionen-Integration.