Saltar al contenido principal
Tutoriales

Crea una aplicación iOS desde Windows con Capacitor y Capgo Crea

Envía una aplicación iOS binaria real desde una máquina de desarrollo de Windows: envuelve tu aplicación web con Capacitor, luego utiliza Capgo Build para compilar, firmar y enviar a TestFlight sin tener un Mac.

Martin Donadieu

Martin Donadieu

Gerente de Contenido

Construye una aplicación iOS desde Windows con Capacitor y Capgo Construye

Construir una aplicación iOS tradicionalmente significa una cosa: necesitas Xcode, y Xcode significa macOS. Esa restricción es incómoda si todo tu equipo está en Windows o Linux, o si simplemente no quieres mantener una máquina de compilación de Mac.

La combinación de Capacitor (para generar el proyecto nativo de iOS) y Capgo Build (para compilar y firmarla en la nube) te permite realizar compilaciones de iOS y envíos a TestFlight desde una estación de trabajo de Windows.

Este guía muestra un flujo de trabajo pragmático que funciona bien en equipos:

  • Desarrolla en Windows como un proyecto web normal.
  • Conserva ios/ en tu repositorio (para que el estado nativo sea reproducible).
  • Ejecuta cap sync localmente (para que tu compilación web se copie en el proyecto de iOS).
  • Desencadena una compilación de iOS en la nube con Capgo Build.

¿Qué realmente construyes en dónde?

Existen dos compilaciones separadas en una aplicación Capacitor:

  • Compilación web (tu JS/HTML/CSS): lo haces localmente en Windows.
  • Compilación nativa (archivo de Xcode, firma, subida): Capgo Build realiza esto en hardware Mac en la nube.

Esta separación es la clave: Capgo Build compila el proyecto nativo, pero espera que tus activos web ya estén sincronizados en ios/.

Requisitos previos

  • Una aplicación de trabajo Capacitor (cualquier framework está bien).
  • Una cuenta de desarrollador de Apple.
  • Acceso a App Store Connect para la aplicación que deseas subir (para TestFlight/App Store de presentación).
  • Tu cuenta de Capgo y token de API (CAPGO_TOKEN).

1) Crea o prepara tu aplicación de Capacitor (Windows)

Si ya tienes una aplicación web, omite los pasos de Capacitor.

Ejemplo con Vite:

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

El build debe producir activos estáticos (para Vite esto es dist/ por defecto):

bun run build

2) Agrega Capacitor y la plataforma iOS

Instala Capacitor:

bun add @capacitor/core @capacitor/ios
bun add -d @capacitor/cli

Inicialice y cree la carpeta de plataforma iOS:

bunx cap init
bunx cap add ios

En este punto tendrá un ios/ carpeta. Comitirlo en git. Capgo Compilar compila lo que hay dentro ios/, por lo que quieres que esté versionado y reproducible.

3) Sincronice siempre Activos Web en iOS antes de Compilar

Cada vez que cambie su aplicación web, haga esta secuencia en Windows:

bun run build
bunx cap sync ios

cap sync es lo que copia sus activos web compilados en el proyecto nativo de iOS (los archivos Capgo Compilar se compilarán realmente).

4) Instale y autentique el Capgo CLI

Capgo Compilar se desencadena a través del Capgo CLI. Con bun, utilice bunx:

bunx @capgo/cli@latest login

O establezca su token mediante una variable de entorno en su shell/CI:

export CAPGO_TOKEN="your_api_key_here"

5) Configure la firma de iOS para compilaciones en la nube

Para compilar iOS necesita material de firma:

  • Certificado de distribución de Apple (.p12) y su contraseña
  • Perfil de configuración (.mobileprovision)
  • App Store Connect API key (AuthKey_XXXXXX.p8) y metadatos (ID de clave, ID de emisor, ID de equipo)

If you still need to generate these files, follow the Capgo documentation:

El camino más fácil es: crear/exportarlos una vez (a menudo utilizando cualquier Mac disponible, un compañero de equipo o una alquiler de una sola vez), luego reutilizarlos desde Windows para cada construcción subsiguiente.

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"

TIP: en CI, almacene los archivos de credenciales codificados en base64 como secretos, los desencripte en tiempo de ejecución, luego ejecute el mismo comando build credentials save command.

6) Desencadenar una compilación de iOS desde Windows

Desde tu carpeta de aplicación:

bun run build
bunx cap sync ios
bunx @capgo/cli@latest build com.example.app --platform ios --build-mode release

Verás registros en tiempo real en tu terminal. Si tienes configurada tu clave de App Store Connect, la compilación Capgo puede enviar automáticamente el resultado a TestFlight.

7) Itera rápido: Actualizaciones en vivo para cambios web únicamente

La compilación Capgo es para cambios nativos:

  • agregar/remover plugins Capacitor
  • cambiar permisos nativos
  • cambiar iconos/splash
  • actualizar Capacitor
  • cualquier cambio en Swift/Objective-C

Para ajustes de interfaz de usuario diarios y correcciones de JavaScript, generalmente deseas Actualizaciones en vivo (OTA), así que no tienes que reconstruir el binario nativo cada vez.

Un buen flujo de trabajo del equipo es:

  • Usa Actualizaciones en vivo para cambios web frecuentes.
  • Use Capgo Build occasionally when native changes are needed.

Problemas comunes de Windows (y soluciones)

  • Olvidando cap sync: si tus cambios de interfaz de usuario no aparecen en la compilación de iOS, es probable que hayas construido la aplicación web pero no la sincronizaste en ios/.
  • No cometer ios/: Build de Capgo compila el proyecto nativo. Si el folder no está en git (o no está en tu contexto de compilación), la compilación no puede reproducir tu aplicación.
  • Cambios de plugins sin reconstrucción nativa: agregar un plugin es un cambio nativo; planifica una ejecución de Build de Capgo (y una presentación en la tienda) después.

Resumen

No puede ejecutar Xcode en Windows, pero puede enviar aplicaciones iOS desde Windows: Envuelve tu aplicación web con __CAPGO_KEEP_0__ (

  1. Wrap your web app with Capacitor (ios/ Construye activos web localmente, luego
  2. Utilice __CAPGO_KEEP_0__ Build para compilar, firmar y enviar tu binario iOS desde el __CAPGO_KEEP_1__. cap sync.
  3. Sigue adelante desde Construye una aplicación iOS desde Windows con Capgo y CLI Build

Keep going from Build an iOS App from Windows with Capacitor and Capgo Build

Construye una aplicación iOS desde Windows con __CAPGO_KEEP_0__ y __CAPGO_KEEP_1__ Build Build an iOS App from Windows with Capacitor and Capgo Build ]} Capgo Integración CI/CD para el flujo de trabajo del producto en Capgo Integración CI/CD, Capgo Compilaciones Nativas para el flujo de trabajo del producto en Capgo Compilaciones Nativas, Capgo Integraciones para el flujo de trabajo del producto en Capgo Integraciones, Integración CI/CD para el detalle de implementación en Integración CI/CD, y GitHub Integración de Acciones para el detalle de implementación en GitHub Integración de Acciones.

Actualizaciones en vivo para aplicaciones Capacitor

Cuando un error en la capa web está activo, envía la corrección a través de Capgo en lugar de esperar días para la aprobación de la tienda de aplicaciones. Los usuarios reciben la actualización en segundo plano mientras los cambios nativos siguen en el camino de revisión normal.

Empezar Ahora

Últimas noticias de nuestro Blog

Capgo te da las mejores pistas que necesitas para crear una aplicación móvil verdaderamente profesional.