Compatibilidad nativa
¿Cómo Capgo detecta el desplazamiento de paquetes nativos y qué significa incompatible para dispositivos?
Copiar un prompt de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
A common Capgo setup uses a canal producción contexto: Página/área: Página de producto de actualizaciones en vivo. Rol: Etiqueta de UI corta o elemento de navegación. Clave de mensaje `live_update_dynamic_label_production` (Etiqueta dinámica de actualización en vivo Producción). canal. CI sube cada actualización OTA a dev, luego promueve a production cuando estés listo. Los equipos suelen agregar --fail-on-incompatible para que CI no envíe una actualización en vivo que necesite nuevos paquetes nativos code por error.
Esta página responde a la pregunta de seguimiento: ¿qué haces cuando tú intencionalmente necesitas un paquete que es incompatible con los paquetes nativos actuales del canal?
Si necesitas el contexto sobre por qué Capgo compara paquetes nativos, comienza con Compatibilidad Nativa. Para una rama de CI completa que elija OTA vs Capgo Build automáticamente, ve a Auto OTA o Nativa.
Esta guía supone que los dev y production canales ya existen. Crea primero si es necesario:
npx @capgo/cli@latest channel add production com.example.appnpx @capgo/cli@latest channel add dev com.example.app| Canal | ¿Quién lo recibe | Subida típica |
|---|---|---|
dev | Construcciones internas / QA | Cada empuje de CI de JS (y baselines nativos intencionales) |
production | Usuarios del almacén | Solo promocionado o subido cuando está listo para su lanzamiento |
--fail-on-incompatible es un buen valor por defecto en ambos canales para subidas OTA diarias. Compara los paquetes nativos en el paquete que estás subiendo contra el paquete actualmente en vivo en ese canalSi difieren, la subida sale con un código de error no cero y nada se envía.
Cuando el cambio es solo JavaScript y los paquetes nativos coinciden con el canal:
npx @capgo/cli@latest bundle upload com.example.app \ --channel production \ --fail-on-incompatible \ --auto-min-update-version--fail-on-incompatible bloques el deslizamiento nativo accidental. --auto-min-update-version is requerido en cada carga una vez que el canal utiliza el metadata estrategia (recomendada a continuación). Si el canal no está en metadata todavía, puedes omitir --auto-min-update-version hasta que cambies.
Puerta de enlace CI opcional antes de la carga:
npx @capgo/cli@latest bundle releaseType com.example.app --channel production# → OTA safe to upload with --fail-on-incompatible# → native stop; ship a native binary first (see below)Tú contexto: fragmento de texto HTML de una cadena de Capgo UI más larga (clave de página `you_definition`). Página/área: sitio web de marketing de Capgo. Rol: párrafo de marketing o legal largo. Visto en: página de advertencia.astro, página de devolución.astro. Clave de mensaje `you_definition` (Tú Definición). subir un paquete que necesita una nueva code nativa mientras se mantiene --fail-on-incompatibleEsa bandera existe para bloquear exactamente ese caso. Cuando un plugin, Capacitor versión o otra dependencia nativa se cambia a propósito:
--fail-on-incompatible.--auto-min-update-version con el canal en la metadata estrategia para que los dispositivos que aún están en la antigua binaria no reciban el nuevo paquete hasta que instalen la nueva aplicación.--fail-on-incompatible vuelva a la CI normal OTA (y mantenga --auto-min-update-version mientras el canal sigue en metadata).Una vez por canal: habilitar la gateo de metadatos
npx @capgo/cli@latest channel set production com.example.app --disable-auto-update metadataRepita para dev si ese canal también recibe baselines nativas intencionales. Después de este cambio, cada carga a el canal debe incluir --auto-min-update-version o --min-update-version.
contexto: texto fragmento HTML de una cadena de Capgo UI más larga (clave de padre `alternatives_cta_questions`). Página/área: página de comparación de alternativas de actualizaciones en vivo de Capacitor. Rol: párrafo de marketing o legal largo. Visto en: página alternatives.astro. Preservar términos de producto y marca de Capgo exactamente. Clave de mensaje `alternatives_cta_questions` (Preguntas de CTA de alternativas). | texto fragmento HTML de una cadena de Capgo UI más larga (clave de padre `appflow_cta_questions`). Página/área: copia de marketing de comparación/migración de Appflow. Rol: párrafo de marketing o legal largo. Visto en: página ionic-appflow.astro. Preservar términos de producto y marca de Capgo exactamente. Clave de mensaje `appflow_cta_questions` (Preguntas de CTA de Appflow). | texto fragmento HTML de una cadena de Capgo UI más larga (clave de padre `capwesome_cta_questions`). Página/área: página de comparación de Capawesome. Rol: párrafo de marketing o legal largo. Visto en: página capwesome.astro. Preservar términos de producto y marca de Capgo exactamente. Clave de mensaje `capwesome_cta_questions` (Preguntas de CTA de Capwesome). | texto fragmento HTML de una cadena de Capgo UI más larga (clave de padre `consulting_faq_subtitle`). Página/área: página de servicios de consultoría. Rol: subtítulo o etiqueta de sección. Visto en: página consulting.astro. Preservar términos de producto y marca de Capgo exactamente. Clave de mensaje `consulting_faq_subtitle` (Subtítulo de FAQ de consultoría). | Página/área: copia de marketing de comparación/migración de Appflow. Rol: etiqueta de UI corta o elemento de navegación. Visto en: página ionic-appflow.astro, página ionic-enterprise-plugins.astro, página soluciones/ionic-enterprise-plugins.astro. Clave de mensaje `appflow_plugins_or` (Appflow Plugins Or).
Enviar el binario nativo
Construir y enviar la aplicación iOS/Android que incluye los nuevos plugins o cambios nativos. Hasta que los usuarios instalen ese binario, no pueden ejecutar de manera segura un paquete que dependa de esos paquetes nativos. --fail-on-incompatible)
npx @capgo/cli@latest bundle upload com.example.app \ --channel production \ --auto-min-update-versionEste registro registra los nuevos paquetes nativos en el canal. Más tarde bundle releaseType / --fail-on-incompatible comprueba esa base.
Reanuda las subidas OTA protegidas
Las liberaciones posteriores solo en JS utilizan ambos flags de nuevo:
npx @capgo/cli@latest bundle upload com.example.app \ --channel production \ --fail-on-incompatible \ --auto-min-update-version--fail-on-incompatible y aún así empujar un paquete incompatible con la plataforma nativa?No. Si los paquetes nativos del archivo de carga difieren de los paquetes del canal en vivo, la bandera falla el comando con propósito. Para un aumento nativo intencional, omita la bandera en esa carga (y utilice --auto-min-update-version ¿Es una carga única sin la bandera el enfoque correcto?
FAQ
dev primero, luego production?Sí, si se ajusta a su proceso. Ejecute las mismas reglas por canal: la comprobación de compatibilidad es contra lo que está vivo en el canal objetivo. Promueva o vuelva a subir a production solo después dev mira bien, y utilice una carga nativa-basada (sin --fail-on-incompatible) en cada canal que necesite los nuevos paquetes nativos registrados.
La CI falla y Capgo no envía esa carga. Eso es el resultado esperado. O el cambio fue accidental (corrija los paquetes nativos y vuelva a intentarlo como OTA), o fue intencional (utilice el camino nativo anterior).
| Ruta | Cuando | Subir banderas |
|---|---|---|
| OTA | Solo JS; paquetes nativos coinciden con el canal | --fail-on-incompatible + --auto-min-update-version (requerido si el canal está en metadata) |
| Bases nativas | Nueva binaria nativa + paquete de JS coincidente | No --fail-on-incompatible; mantener --auto-min-update-version |
Compatibilidad nativa
¿Cómo Capgo detecta el desplazamiento de paquetes nativos y qué significa incompatible para dispositivos?
Auto OTA o Nativo
Hacer un __CAPGO_KEEP_0__ Wire bundle releaseType en GitHub Acciones o GitLab para que CI elija el camino correcto.
Objetivos de versión
contexto: Página/área: Página de marketing de soluciones de Capgo. Rol: Título de sección o página. Visto en: página de soluciones/objetivos-de- versión.astro. Clave de mensaje `solutions_version_targeting_title` (Título de soluciones de versión). | Página/área: Página de marketing de soluciones de Capgo. Rol: Etiqueta de IU corta o elemento de navegación. Visto en: página de soluciones/objetivos-de-versión.astro. Clave de mensaje `solutions_version_targeting` (Soluciones de versión de objetivos).
CLI: bundle
__CAPGO_KEEP_0__: paquete
Si estás utilizando Native + OTA Channel Workflow para mantener actualizaciones en vivo seguras a través de lanzamientos nativos, conecta con Compatibilidad nativa para las reglas de comparación de paquetes, Auto OTA o Nativo para ramificaciones de CI, Objetivos de versión contexto: página de marketing de soluciones de Capgo. Rol: título de sección o página. Visto en: página de soluciones/objetivos-de-versión.astro. Clave de mensaje `solutions_version_targeting_title` (Título de soluciones de versionado). | Página/área: página de marketing de soluciones de Capgo. Rol: etiqueta de IU corta o elemento de navegación. Visto en: página de soluciones/objetivos-de-versión.astro. Clave de mensaje `solutions_version_targeting` (Soluciones de versionado). Capgo CLI bundle reference __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ referencia del paquete de conjunto