Passer à la navigation principale
Tutoriel

Comment construire une application Capacitor Ionic dans Xcode Cloud

Utilisez Xcode Cloud pour construire votre application Capacitor JS et évitez l'utilisation de MacOS.

Crédits de l'article

Martin Donadieu

Écrivain

Valeria

Relecteur

Jordan

Éditeur

Comment construire une application Ionic Capacitor dans Xcode Cloud

Prérequis

Avant de poursuivre avec ce tutoriel…

  • Assurez-vous d'utiliser GitHub
  • Utilisez Capacitor
  • Votre application est déjà déployée sur l'App Store
  • Désir de lire 😆…

L'utilisation d'Ionic est facultative, pour Cordova cela pourrait fonctionner, mais je n'ai pas essayé.

Informations importantes sur le prix

Prix Xcode Cloud

https://developer.apple.com/xcode-cloud/

Le service est ‘gratuit’ jusqu'à la limite.
Vous pouvez voir dans l'écran de capture d'écran le prix et les limites (prix au moment de la création de ce tutoriel, ils pourraient subir des changements à l'avenir)

🔴 Une fois averti des exigences et des prix, si vous le souhaitez, nous continuons…

📣 Dans l'article, on suppose que nous avons l'application créée dans l'App Store

Introduction

Pour faire en sorte que Xcode construise votre application Capacitor, vous devez configurer quelques choses.

Préparation du package

Assurez-vous d'avoir votre commande de build dans votre package.json script. Ensuite, ajoutez le sync:ios commande comme suit.

{
  "scripts": {
    "build": "YOUR BUILD COMMAND",
    "sync:ios": "cap sync ios"
  }
}

Cette étape fera fonctionner simplement le script post

Script de clonage post

Ce script sera exécuté par Xcode Cloud après l'étape de clonage

#!/usr/bin/env bash

set -x

export HOMEBREW_NO_INSTALL_CLEANUP=TRUE
# Install CocoaPods
echo "📦 Install CocoaPods"
brew install cocoapods
brew install node@18
brew link node@18

# Install dependencies
# XCode Cloud is literally broken for 2 months now - https://developer.apple.com/forums/thread/738136?answerId=774510022#774510022
npm config set maxsockets 3
npm ci
# or `pnpm install --frozen-lockfile` or `yarn add --frozen-lockfile` or bun install
npm run build 
# or npm run build
npm run sync:ios

Enregistrez ce fichier dans la racine de votre projet et nommez-le ios/App/ci_scripts/ci_post_clone.sh

Ensuite, faites de ce fichier un exécutable avec cette commande chmod +x ios/App/ci_scripts/ci_post_clone.sh

Créez un flux de travail Xcode

Ouvrez Xcode (oui, pour supprimer Xcode, vous avez besoin de Xcode)

Et allez dans cette onglet : Étape Xcode 1

Cliquez sur Créer un flux de travail, sélectionnez votre application, cliquez sur Suivant comme ci-dessous.

Étape Xcode 2

Cliquez sur Éditer le flux de travail sur le côté gauche Étape Xcode 2

Allez dans l'onglet Environnements et choisissez comme ci-dessous Mac 12.4 et vérifiez l'option appropriée Étape Xcode 3

Choisissez votre condition de démarrage. Si vous utilisez la même build que nous, je vous conseille d'utiliser Tag au lieu de branch, pour éviter les double builds.

Définissez votre variable d'environnement Étape Xcode 4

Connectez votre compte GitHub Étape Xcode 5

Étape Xcode 6

Activer ensuite le flux de travail et commitez votre première modification, vous devriez voir votre build s'exécuter dans Xcode.

Traitement de la construction

Dans Xcode Cloud, Vous êtes facturés en fonction des minutes que vous avez utilisées pour exécuter votre flux de CI/CD. D'expérience, il faut environ 10-15 minutes avant que votre build ne soit traité dans l'App Store.

Pour les projets privés, le coût estimé par build peut aller jusqu'à $0,008/min x 5 min = $0,4, ou plus, en fonction de la configuration ou des dépendances de votre projet.

Pour les projets Open-source, ce ne devrait pas être un problème du tout. Consultez tarification.

Keep going from How to build Ionic Capacitor app in Xcode Cloud

Si vous utilisez How to build Ionic Capacitor app in Xcode Cloud __CAPGO_KEEP_0__ CI/CD Capgo pour le flux de travail du produit dans Capgo CI/CD, Capgo Builds natifs pour le flux de travail du produit dans Capgo Builds natifs, Capgo Intégrations pour le flux de travail du produit dans Capgo Intégrations, Intégration CI/CD pour le détail d'implémentation dans Intégration CI/CD, et GitHub Actions d'intégration pour le détail d'implémentation dans GitHub Actions d'intégration.

Actualités en direct pour les applications Capacitor

Lorsqu'un bug de la couche web est en direct, expédiez la correction par le biais de Capgo au lieu d'attendre des jours pour l'approbation de la boutique d'applications. Les utilisateurs reçoivent la mise à jour en arrière-plan tandis que les modifications natives restent dans la voie de revue normale.

un soutien humain de Martin

Démarrer maintenant

Dernières actualités de notre Blog

Capgo vous donne les meilleures informations dont vous avez besoin pour créer une application mobile vraiment professionnelle.