Saltar al contenido principal
Guía

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

Envía un binario iOS 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 necesidad de un Mac.

Martin Donadieu

Martin Donadieu

Contento

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

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 de iOS nativo) y Capgo Construcción (para compilar y firmarlo en la nube) te permite realizar compilaciones de iOS y envíos a TestFlight desde una estación de trabajo de Windows.

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

  • Desarrolla en Windows como un proyecto web normal.
  • Mantén 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).
  • Dispara una compilación de iOS en la nube con Capgo Construcción.

¿Qué construyes realmente en dónde?

Hay dos compilaciones separadas en una aplicación Capacitor:

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

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

Requisitos previos

  • Una aplicación Capacitor funcionando (cualquier marco de trabajo es válido).
  • Una cuenta de desarrollador de Apple.
  • Acceso a App Store Connect para la aplicación que deseas subir (para TestFlight/Subida a App Store).
  • Tu cuenta de Capgo y API token (CAPGO_TOKEN).

1) Crea o Prepara Tu Aplicación Capacitor (Windows)

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

Ejemplo con Vite:

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

Debes producir activos estáticos (por defecto para Vite es) dist/ 2) Agrega __CAPGO_KEEP_0__ y la plataforma iOS

bun run build

Instala Capacitor:

Install Capacitor:

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

En este punto tendrás una

bunx cap init
bunx cap add ios

carpeta. Comítala a git. __CAPGO_KEEP_0__ Build compila lo que está dentro ios/ directory. Commit it to git. Capgo Build compiles what is inside ios/3) Sincroniza siempre Activos Web con iOS antes de construir

Cada vez que cambies tu aplicación web, haz esta secuencia en Windows:

es lo que copia tus activos web construidos en el proyecto nativo de iOS (los archivos __CAPGO_KEEP_0__ Build compilarán en realidad).

bun run build
bunx cap sync ios

cap sync 4) Instala y autentica el Capgo __CAPGO_KEEP_1__

4) Install and Authenticate the Capgo CLI

Capgo Se activa la construcción mediante el 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)
  • Clave de App Store Connect API (AuthKey_XXXXXX.p8) y metadatos (ID de clave, ID de emisor, ID de equipo)

Si todavía necesita generar estos archivos, consulte la documentación Capgo:

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

Una vez que tenga los archivos localmente, guarde los archivos para 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"

Consejo: en CI, almacene los archivos de credenciales codificados en base64 como secretos, los desencripte en tiempo de ejecución, luego ejecute el mismo build credentials save 6) Inicie una Construcción de iOS desde Windows

Desde su carpeta de aplicación:

Verá registros en tiempo real en su terminal. Si su clave de App Store Connect está configurada, __CAPGO_KEEP_0__ Build puede enviar la construcción resultante a TestFlight automáticamente.

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 es para cambios nativos:

agregar/quitar Capgo plugins

  • adding/removing Capacitor plugins
  • cambiar permisos nativos
  • cambiando iconos/pantalla de inicio
  • actualizando Capacitor
  • anyos cambios en Swift/Objective-C

Para ajustes diarios de interfaz de usuario y correcciones de JavaScript, generalmente deseas Actualizaciones en vivo contexto: Sección o página de la página de inicio sección de problemas/soluciones. Papel: Título de sección o página. Visto en: página premium-support.astro. Clave de mensaje `ps_help_updates_title` (Ps Ayuda Actualizaciones Titulo).

(OTA), por lo tanto, no se reconstruye el binario nativo cada vez.

  • Un buen flujo de trabajo de equipo es:
  • Use Capgo Build occasionally when native changes are needed.

Usar __CAPGO_KEEP_0__ Build ocasionalmente cuando se necesitan cambios nativos.

  • Problemas comunes de Windows (y soluciones) cap syncOlvidando que si tus cambios de interfaz de usuario no aparecen en la compilación de iOS, es probable que hayas compilado la aplicación web pero no la sincronizaste en ios/.
  • Not cometiéndolo ios/: 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.
  • Los cambios de plugin sin recompilar nativamente: agregar un plugin es un cambio nativo; planifica una compilación Capgo (y una presentación en la tienda) posteriormente.

Resumen

No puedes ejecutar Xcode en Windows, pero puedes : enviar aplicaciones iOS desde Windows:

  1. Envuelve tu aplicación web con Capacitor (ios/ en tu repositorio).
  2. Compila los activos web localmente, luego cap sync.
  3. Utiliza Capgo Build para compilar, firmar y presentar tu binario iOS desde el CLI.

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

Si estás utilizando Construye una aplicación iOS desde Windows con Capacitor y Capgo Construye para planificar la automatización de CI/CD, conecta con Capgo Automatización de CI/CD para el flujo de trabajo del producto en Capgo Automatización de 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 de CI/CD para el detalle de implementación en Integración de CI/CD, y GitHub Acciones de Integración para los detalles de implementación en GitHub Acciones de Integración.

Actualizaciones en vivo para aplicaciones Capacitor

When a web-layer bug is live, ship the fix through Capgo instead of waiting days for app store approval. Users get the update in the background while native changes stay in the normal review path.

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

Contenido del contexto: Página/área: Sitio web de marketing de Capgo. Rol: Descripción de apoyo de la página o meta descripción. Visto en: componente GetStarted.astro. Preservar términos de producto/marca y de desarrollador exactamente. Mensaje clave `instant_updates_for_capacitor_apps_description` (Descripción de Actualizaciones Instantáneas para Aplicaciones de Capacitor).

soporte humano de Martin desde la página de inicio de la aplicación de Capgo. Contenido del contexto: Página/área: Página de inicio de marketing de la aplicación de Capgo. Rol: Oración de sitio web. Visto en: componente HumanSupport.astro, componente pricing/Plans.astro. Mensaje clave `home_hero_human_support` (Soporte Humano de la Página de Inicio).

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