Zum Hauptinhalt springen
Anleitung

Ein iOS-App von Windows mit Capacitor und Capgo erstellen

Ein echtes iOS-Binary von einem Windows-Entwicklungsrechner ausliefern: Verwenden Sie Capacitor zum Umhüllen Ihrer Web-App, dann verwenden Sie Capgo Build, um zu kompilieren, zu signieren und bei TestFlight abzugeben, ohne einen Mac zu besitzen.

Martin Donadieu

Martin Donadieu

Content-Marketing-Spezialist

Ein iOS-App von Windows mit Capacitor und Capgo erstellen

Traditionell bedeutet die Erstellung einer iOS-App eine Sache: 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 keinen Mac-Build-Computer aufrechterhalten möchten.

Die Combo von Capacitor (um die native iOS-Projektdatei zu generieren) und Capgo Build Lassen Sie es (um es zu kompilieren und zu signieren) Ihnen ermöglichen, iOS-Builds und TestFlight-Einsendungen von einem Windows-Workstation aus durchzuführen.

Diese Anleitung zeigt einen pragmatischen Workflow, der sich gut in Teams bewährt:

  • Entwickeln Sie auf Windows wie ein normales Web-Projekt.
  • Behalten Sie ios/ in Ihrem Repository (damit der native Zustand wiederherstellbar ist).
  • Ausführen cap sync lokal (damit Ihre Web-Build in das iOS-Projekt kopiert wird).
  • Lassen Sie einen iOS-Cloud-Build mit Capgo Build auslösen.

Was Sie tatsächlich bauen, wo

Es gibt zwei separate „Builds“ in einer Capacitor-Anwendung:

  • Web-Build (Ihr JS/HTML/CSS): Führen Sie dies lokal auf Windows durch.
  • Native Build (Xcode-Archiv, Signierung, Upload): Capgo Build führt dies auf Mac-Hardware im Cloud durch.

Der Schlüssel liegt in der Trennung: Capgo Build kompiliert das native Projekt, aber es erwartet, dass Ihre Web-Assets bereits synchronisiert in ios/.

Voraussetzungen

  • Eine funktionierende Capacitor-Anwendung (jede Framework ist in Ordnung).
  • Eine Apple-Entwicklerkonto.
  • Zugriff auf App Store Connect für die Anwendung, die Sie hochladen möchten (für TestFlight/App Store-Submission).
  • Ihr Capgo-Konto und API-Token (CAPGO_TOKEN).

1) Erstellen oder Vorbereiten Sie Ihre Capacitor-Anwendung (Windows)

Wenn Sie bereits eine Web-Anwendung haben, überspringen Sie die Capacitor-Schritte.

Beispiel mit Vite:

bun create vite@latest my-app
cd my-app
bun install

Muss das Build-Verfahren 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

Zu diesem Zeitpunkt haben Sie ein ios/ Verzeichnis. Fügen Sie es in Git ein. Capgo Build kompiliert, was sich innerhalb ios/findet, also möchten Sie es versioniert und reproduzierbar haben.

3) Synchronisieren Sie immer Web-Assets in iOS vor dem Bauen

Jedes Mal, wenn Sie Ihre Web-Anwendung ändern, führen Sie diese Sequenz auf Windows aus:

bun run build
bunx cap sync ios

cap sync ist das, was Ihre gebauten Web-Assets in das native iOS-Projekt kopiert (die Dateien Capgo Build werden tatsächlich kompilieren).

4) Installieren und authentifizieren Sie das Capgo CLI

Capgo Build wird über den Capgo CLI ausgelöst. Mit bun, verwenden Sie bunx:

bunx @capgo/cli@latest login

Oder setzen Sie Ihren Token über die Umgebungsvariable in Ihrer Shell/CI:

export CAPGO_TOKEN="your_api_key_here"

5) Konfigurieren Sie die iOS-Signierung für Cloud-Builds

Um iOS zu bauen, benötigen Sie Signiermaterial:

  • Apple-Distributionssiegel (.p12) und dessen Passwort
  • Zertifikatsprofil (.mobileprovision)
  • App Store Connect API-Schlüssel (AuthKey_XXXXXX.p8) und Metadaten (Key ID, Issuer ID, Team ID)

Wenn Sie diese Dateien noch generieren müssen, folgen Sie bitte der Capgo-Dokumentation:

Der einfachste Weg ist: Erstelle diese einmal (oft mit einem verfügbaren Mac, einem Teammitglied oder einer einmaligen Mietung) und verwende sie dann von Windows aus für jeden nachfolgenden Build.

Sobald du die Dateien lokal hast, speichere sie für den 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"

Tip: In der CI speichere die Zugriffskennwortdateien bas64-codiert als Geheimnisse, decode sie bei der Ausführung und führe dann denselben Befehl aus. build credentials save 6) Von Windows aus einen iOS-Build auslösen

Aus deinem App-Ordner:

Du wirst in Echtzeit-Logs in deinem Terminal sehen. Wenn deine App Store Connect-Zugriffsschlüssel konfiguriert ist, kann __CAPGO_KEEP_0__ Build den resultierenden Build automatisch an TestFlight übermitteln.

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.

__CAPGO_KEEP_0__ Build ist für native Änderungen gedacht:

Hinzufügen/Entfernen von Capgo-Plugins

  • adding/removing Capacitor plugins
  • 8) Schnell iterieren: Live-Updates für native Änderungen
  • Icons und Splash-Screens ändern
  • Aktualisieren Sie Capacitor
  • Jede Änderung an Swift oder Objective-C

Für alltägliche Anpassungen der Benutzeroberfläche und JavaScript-Fixes möchten Sie normalerweise Live-Updates (OTA), sodass Sie das native Binärdatei nicht jedes Mal neu erstellen müssen.

Ein gutes Teamworkflow ist:

  • Verwenden Sie Live-Updates für häufige Web-Änderungen.
  • Verwenden Sie Capgo Build gelegentlich, wenn native Änderungen erforderlich sind.

Häufige Windows-Fehler (und Lösungen)

  • Vergessen Sie cap sync: Wenn Ihre UI-Änderungen im iOS-Build fehlen, haben Sie wahrscheinlich die Web-Anwendung erstellt, aber sie nicht synchronisiert haben. ios/.
  • Nicht committieren ios/: Capgo Build kompiliert das native Projekt. Wenn der Ordner nicht in Git (oder nicht in Ihrem Buildkontext) ist, kann die Build nicht wiederherstellen, um Ihre App zu erstellen.
  • Plugin-Änderungen ohne native Rebuild: Die Hinzufügung eines Plugins ist eine native Änderung; planen Sie einen Capgo Build-Aufruf (und eine Store-Submission) danach.

Zusammenfassung

Sie können Xcode nicht auf Windows ausführen, aber Sie können iOS-Apps von Windows ausliefern: Verwenden Sie __CAPGO_KEEP_0__ (

  1. Wrap your web app with Capacitor (ios/ Bauen Sie Ihre Web-Assets lokal, dann
  2. Verwenden Sie __CAPGO_KEEP_0__ Build, um Ihr iOS-Binary zu kompilieren, zu signieren und von __CAPGO_KEEP_1__ auszusenden. cap sync.
  3. Use Capgo Build to compile, sign, and submit your iOS binary from the CLI.
Live-Updates für Capacitor-Anwendungen

Wenn ein Web-Schicht-Bug live ist, liefern Sie die Reparatur über Capgo anstatt Tage auf die Genehmigung des App-Store zu warten. Die Benutzer erhalten die Aktualisierung im Hintergrund, während native Änderungen im normalen Review-Prozess bleiben.

Los geht's jetzt

Neuestes aus unserem Blog

Capgo gibt Ihnen die besten Einblicke, die Sie benötigen, um eine wirklich professionelle mobile App zu erstellen.