Construire une application iOS traditionnellement signifie une chose : vous avez besoin de Xcode, et Xcode signifie macOS. Cette contrainte est gênante si votre équipe est entièrement sur Windows ou Linux, ou si vous ne voulez pas maintenir une machine de build Mac.
Le mélange de Capacitor et Capgo Build vous permet de faire des builds iOS et des soumissions sur TestFlight à partir d'une station de travail Windows.
Cette guide présente un workflow pragmatique qui fonctionne bien dans les équipes :
- Développez sur Windows comme un projet web normal.
- Gardez
ios/dans votre dépôt (afin que l'état natif soit réproducible). - Exécutez
cap synclocalement (afin que votre build web soit copié dans le projet iOS). - Déclenchez une mise en ligne cloud d'iOS avec Capgo Build.
Ce que vous construisez vraiment où
Il existe deux « constructions » séparées dans une application Capacitor :
- Construction web (votre JS/HTML/CSS) : vous effectuez cela localement sur Windows.
- Construction native (archive Xcode, signature, téléversement) : Capgo Build effectue cela sur un matériel Mac dans le cloud.
Cette séparation est la clé : Capgo Build compile le projet natif, mais elle attend que vos actifs web soient déjà synchronisés dans ios/.
Prérequis
- Une application Capacitor fonctionnelle (n'importe quel framework est acceptable).
- Un compte développeur Apple.
- Accès à App Store Connect pour l'application que vous souhaitez téléverser (pour TestFlight/ soumission sur l'App Store).
- Votre compte Capgo et votre jeton API (
CAPGO_TOKEN).
1) Créez ou Préparez votre application Capacitor (Windows)
Si vous avez déjà une application web, sautez directement aux étapes Capacitor.
Exemple avec Vite :
bun create vite@latest my-app
cd my-app
bun install
La construction doit produire des actifs statiques (par défaut, pour Vite, c'est) dist/ 2) Ajoutez __CAPGO_KEEP_0__ et la plateforme iOS
bun run build
Installez Capacitor :
Install Capacitor:
bun add @capacitor/core @capacitor/ios
bun add -d @capacitor/cli
À ce stade, vous disposerez d'un
bunx cap init
bunx cap add ios
dossier. Commitez-le dans Git. La construction __CAPGO_KEEP_0__ compile ce qui est à l'intérieur, ios/ directory. Commit it to git. Capgo Build compiles what is inside ios/Votre
3) Synchronisez toujours les actifs Web dans iOS avant de construire
Tout changement dans votre application Web, faites cette séquence sur Windows :
bun run build
bunx cap sync ios
cap sync ceci est ce qui copie vos actifs Web construits dans le projet natif iOS (les fichiers Capgo Build seront effectivement compilés).
4) Installez et authentifiez le Capgo CLI
Capgo Build est déclenché via le Capgo CLI. Avec bun, utilisez bunx:
bunx @capgo/cli@latest login
Ou définissez votre jeton via une variable d'environnement dans votre shell/CI :
export CAPGO_TOKEN="your_api_key_here"
5) Configurez la signature iOS pour les builds Cloud
Pour construire iOS, vous avez besoin de matériel de signature :
- certificat de distribution Apple (
.p12) et son mot de passe - profil de provisionnement (
.mobileprovision) - clé App Store Connect API (
AuthKey_XXXXXX.p8et les métadonnées (ID de clé, ID émetteur, ID d'équipe)
Si vous avez encore besoin de générer ces fichiers, suivez la documentation Capgo :
- Gestion des Identifiants (ce qu'il faut sauvegarder et comment)
- Obtenir les Certificats et Profils de Provisionnement iOS
La voie la plus facile est : créez/exportez-les une fois (souvent en utilisant n'importe quel Mac disponible, un collègue ou un location à usage unique), puis réutilisez-les depuis Windows pour chaque build ultérieur.
Une fois que vous avez les fichiers localement, sauvegardez-les pour 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"
Conseil : dans CI, stockez les fichiers de credenciaux encodés en base64 en tant que secrets, décodez-les en temps de exécution, puis exécutez la même build credentials save 6) Déclenchez une Build iOS depuis Windows
À partir de votre dossier d'application :
Vous verrez des journaux en temps réel dans votre terminal. Si votre clé App Store Connect est configurée, __CAPGO_KEEP_0__ Build peut soumettre la build résultante à TestFlight automatiquement.
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) Itérer rapidement : Mises à jour en direct pour les modifications uniquement web
Capgo La construction est pour les modifications natives :
- Capacitor l'ajout/suppression des Capacitor plugins
- context
- ajout/suppression des plugins
- updating Capacitor
- changing icons/splash
updating __CAPGO_KEEP_0__ any Swift/Objective-C changes Pour les ajustements quotidiens de l'interface utilisateur et les corrections JavaScript, vous souhaitez généralement
Live Updates
- une mise à jour en temps réel (OTA), afin de ne pas reconstruire le binaire natif à chaque fois ;
- Utilisez Capgo Build occasionnellement lorsque des changements natifs sont nécessaires.
Pièges communs de Windows (et corrections)
- Oublier
cap sync: si vos modifications de l'interface utilisateur manquent dans la version iOS, il est probable que vous avez construit l'application web mais n'avez pas synchronisé l'application.ios/. - Ne pas commiter
ios/: Capgo Build compile le projet natif. Si le dossier n'est pas dans Git (ou pas dans votre contexte de build), la build ne peut pas reproduire votre application. - Changements de plugins sans rebuild natif: l'ajout d'un plugin est un changement natif; prévoyez une exécution de Capgo Build (et une soumission de magasin) par la suite.
Résumé
Vous ne pouvez pas exécuter Xcode sur Windows, mais vous pouvez envoyer des applications iOS à partir de Windows : ship iOS apps from Windows:
- Enveloppez votre application web avec Capacitor (
ios/dans votre dépôt). - Construirez les actifs web localement, puis
cap sync. - Utilisez Capgo Build pour compiler, signer et soumettre votre fichier binaire iOS à partir de CLI.
Continuez avec la construction d'une application iOS à partir de Windows avec Capacitor et Capgo Build
Si vous utilisez la construction d'une application iOS à partir de Windows avec Capacitor et Capgo Build pour planifier l'automatisation CI/CD, connectez-l’avec Capgo CI/CD pour le flux de travail du produit dans Capgo CI/CD, Capgo Native Builds pour le flux de travail du produit dans Capgo Native Builds, Capgo Intégrations pour le flux de travail du produit dans Capgo Intégrations Intégration CI/CD pour les détails d'implémentation dans Intégration CI/CD, et GitHub Intégration d'actions pour les détails d'implémentation dans GitHub Intégration d'actions