Building an iOS app traditionally means one thing: Sie benötigen Xcode, und Xcode bedeutet macOS. Diese Einschränkung ist ärgerlich, wenn Ihr gesamtes Team auf Windows oder Linux ist, oder wenn Sie einfach keine Mac-Build-Maschine aufrechterhalten möchten.
Der Kombinationsgutschein von Capacitor (um das native iOS-Projekt zu generieren) und Capgo Build (um es im Cloud zu kompilieren und zu signieren) ermöglicht Ihnen iOS-Builds und TestFlight-Einsendungen von einem Windows-Arbeitsplatz.
Diese Anleitung zeigt einen pragmatischen Workflow, der in Teams gut funktioniert:
- Entwickeln Sie auf Windows wie ein normales Web-Projekt.
- Halten Sie
ios/in Ihrem Repository (damit der native Zustand wiederherstellbar ist). - Ausführen Sie
cap synclokal (damit Ihre Web-Ausgabe in das iOS-Projekt kopiert wird). - Ein iOS-Cloud-Build auslösen mit Capgo Build.
Was Sie eigentlich bauen, wo
Es gibt zwei separate „Builds“ in einer Capacitor App:
- Web-Build (Ihr JS/HTML/CSS): Sie tun dies lokal auf Windows.
- Native-Build (Xcode-Archive, Signierung, Upload): Capgo Build tut dies auf Mac-Hardware in der Cloud.
Dieser Aufteilung liegt der Schlüssel: Capgo Build kompiliert das native Projekt, aber es erwartet, dass Ihre Web-Assets bereits synchronisiert in ios/.
Voraussetzungen
- Ein funktionierendes Capacitor-Projekt (jedes Framework ist in Ordnung).
- Ein Apple-Entwicklerkonto.
- Zugriff auf App Store Connect für die App, die Sie hochladen möchten (für TestFlight/App Store-Submission).
- Ihr Capgo Konto und API Token (
CAPGO_TOKEN).
1) Erstellen oder Vorbereiten Ihres Capacitor Apps (Windows)
Wenn Sie bereits eine Web-App haben, überspringen Sie die Capacitor Schritte.
Beispiel mit Vite:
bun create vite@latest my-app
cd my-app
bun install
Die Build-Methode muss statische Assets erzeugen (für Vite ist dies dist/ standardmäßig):
bun run build
2) Fügen Sie Capacitor und die iOS-Plattform hinzu
Installieren Sie Capacitor:
bun add @capacitor/core @capacitor/ios
bun add -d @capacitor/cli
Initialisieren und erstellen Sie das iOS-Plattform-Verzeichnis:
bunx cap init
bunx cap add ios
In diesem Punkt haben Sie ein ios/ Verzeichnis. Commiten Sie es in Git. Capgo Build kompiliert, was sich innerhalb ios/findet, also möchten Sie es versioniert und reproduzierbar haben.
3) Synchronisiere Web-Assets immer vor der iOS-Buildung
Jedes Mal, wenn du deine Web-Anwendung änderst, führ diese Sequenz auf Windows durch:
bun run build
bunx cap sync ios
cap sync ist das, was deine gebauten Web-Assets in das native iOS-Projekt kopiert (die Dateien Capgo Build werden tatsächlich kompiliert).
4) Installiere und authentifiziere das Capgo CLI
Capgo Build wird über das Capgo CLI ausgelöst. Mit bun, verwende bunx:
bunx @capgo/cli@latest login
Oder setze deinen Token über Umgebungsvariable in deinem Shell/CI:
export CAPGO_TOKEN="your_api_key_here"
5) Konfiguriere iOS-Zertifizierung für Cloud-Builds
Um iOS zu bauen, benötigst du Zertifizierungsmaterial:
- Apple-Distribution-Zertifikat (
.p12) und dessen Passwort - Provisioning-Profil (
.mobileprovision) - App Store Connect API-Sicherheitszertifikat (
AuthKey_XXXXXX.p8Wenn Sie diese Dateien noch generieren müssen, folgen Sie bitte der __CAPGO_KEEP_0__-Dokumentation:
If you still need to generate these files, follow the Capgo documentation:
- (was zu speichern und wie) iOS-Zertifikate und Provisioning-Profile erhalten
- Der einfachste Weg ist: Erstellen/Aufrufen dieser einmal (oft mit einem verfügbaren Mac, einem Teammitglied oder einer einmaligen Mietvereinbarung), dann wiederverwenden Sie sie von Windows für jeden nachfolgenden Build.
Einmal haben Sie die Dateien lokal gespeichert, speichern Sie sie für __CAPGO_KEEP_0__ Build:
Once you have the files locally, save them for Capgo Build:
bunx @capgo/cli@latest build credentials save \
--platform ios \
--certificate ./cert.p12 \
--p12-password "password" \
--provisioning-profile ./profile.mobileprovision \
--apple-key ./AuthKey.p8 \
--apple-key-id "KEY123" \
--apple-issuer-id "issuer-uuid" \
--apple-team-id "team-id"
6) Auslösen eines iOS-Builds von Windows build credentials save Von Ihrem App-Ordner:
Sie sehen die Echtzeit-Protokolle in Ihrem Terminal. Wenn Ihre App Store Connect-Zugangsdaten konfiguriert sind, kann __CAPGO_KEEP_0__ Build das resultierende Build automatisch bei TestFlight einreichen.
Verwaltung von Anmeldeinformationen
bun run build
bunx cap sync ios
bunx @capgo/cli@latest build com.example.app --platform ios --build-mode release
You will see real-time logs in your terminal. If your App Store Connect key is configured, Capgo Build can submit the resulting build to TestFlight automatically.
7) Iteriere schnell: Live-Updates für Web-Only-Änderungen
Capgo Build ist für native Änderungen:
- Capacitor-Plugins hinzufügen/entfernen
- native Berechtigungen ändern
- Icons/Splash ändern
- Capacitor aktualisieren
- Jedwede Swift/Objective-C-Änderungen
Für alltägliche UI-Anpassungen und JavaScript-Fixes möchtest du Live-Updates (OTA), damit du das native Binärdatei nicht jedes Mal neu erstellen musst.
Ein gutes Teamworkflow ist:
- Verwende Live-Updates für häufige Web-Änderungen.
- Verwenden Sie Capgo Build gelegentlich, wenn native Änderungen erforderlich sind.
Gemeinsame Windows-Fehler (und Lösungen)
- Vergessen
cap sync: Wenn Ihre UI-Änderungen im iOS-Build fehlen, haben Sie wahrscheinlich die Web-Anwendung gebaut, aber nicht synchronisiert.ios/. - Nicht committieren
ios/: Capgo Build kompiliert das native Projekt. Wenn das Ordner nicht in Git (oder nicht in Ihrem Buildkontext) ist, kann die Build nicht Ihre App wiederherstellen. - Plugin-Änderungen ohne native Rebuild: Die Hinzufügung eines Plugins ist eine native Änderung; planen Sie einen Capgo Build-Ablauf (und eine Store-Submission) danach.
Zusammenfassung
Sie können Xcode auf Windows nicht ausführen, aber Sie können iOS-Apps von Windows ausliefern:
- Verwenden Sie Capacitor (
ios/in Ihrem Repository). - Bauen Sie Web-Assets lokal, dann
cap sync. - Verwenden Sie Capgo Build, um Ihr iOS-Binary zu kompilieren, zu signieren und zu übermitteln, von der CLI.
Bleiben Sie bei Build an iOS App von Windows mit Capacitor und Capgo Build.
Wenn Sie " Bauen Sie an iOS App von Windows mit Capacitor und Capgo Build. um die CI/CD-Automatisierung zu planen, verbinden Sie es mit Capgo CI/CD für das Produktworkflow in Capgo CI/CD, Capgo Native Builds für das Produktworkflow in Capgo Native Builds, Capgo Integrations für den Produktworkflow in Capgo Integrations CI/CD-Integration für die Implementierungsdetails in CI/CD-Integration, und GitHub Actions-Integration für die Implementierungsdetails in GitHub Actions-Integration.