Problemas de Actualización Comunes
Copie un prompt de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Cuando falla una comprobación de actualización, Capgo suele devolver un error code y un message en el /updates la respuesta. Esta página explica los errores más comunes y las soluciones más rápidas.
Lee esto primero
Título de la sección “Lee esto primero”no_new_version_availablees un estado normal, no un error.- Muchos informes de ‘actualización encontrada pero no aplicada’ son rechazos de políticas/configuración en lugar de retraso en la caché, especialmente cuando la respuesta incluye un ‘__CAPGO_KEEP_0__’ explicito.
errorcode. - mientras se reproduce el problema para ver detalles de solicitud/respuesta.
npx @capgo/cli@latest app debugCódigos de error comunes
Título de la sección “Códigos de error comunes”
Título de la sección “provider_infrastructure_request_blocked”provider_infrastructure_request_blocked
título de la sección ‘provider_infrastructure_request_blocked’Causa
La aplicación tiene Bloquear solicitudes de infraestructura del proveedor enabled and the request originated from a known Google or Apple datacenter IP range. Capgo blocks these requests on /updates, /stats __CAPGO_KEEP_0__ bloquea estas solicitudes en /channel_self , y
para evitar que el tráfico originado por el proveedor se trate como tráfico de dispositivo.
- Solución
- Reproducir la actualización desde un dispositivo físico en una red de usuario normal.
- No utilice sondas hospedadas en la nube o ejecutores de centro de datos del proveedor para actualizaciones, estadísticas o comprobaciones de canal-self mientras esta protección está habilitada. Si ese tráfico es intencional, abra la pestaña Información Protege la infraestructura de proveedores de bloques de solicitudes. Rehabilitarlo cuando la prueba esté completa.
Nuevos aplicativos tienen esta protección habilitada por defecto. Las aplicaciones creadas antes de que se introdujo la configuración mantienen deshabilitada hasta que la habilites.
Detalles de respuesta
/updatespreserva el contrato de respuesta del actualizador y devuelve HTTP200. Su cuerpo incluyeerror,message,kind: "blocked", yprovider("google"o"apple")./statscontexto: Fragmento de texto HTML de una cadena de UI de Capgo más larga (clave de mensaje `alternatives_cta_questions`). Página/área: Comparación de alternativas de actualización en vivo de Capacitor. Papel: Párrafo de marketing o legal largo. Visto en: página alternatives.astro. Preservar términos de producto y marca de Capgo y términos de desarrollador exactamente. Clave de mensaje `alternatives_cta_questions` (Preguntas de CTA de alternativas). | Fragmento de texto HTML de una cadena de UI de Capgo más larga (clave de mensaje `appflow_cta_questions`). Página/área: Copia de marketing de comparación/migración de Appflow. Papel: Párrafo de marketing o legal largo. Visto en: página ionic-appflow.astro. Preservar términos de producto y marca de Capgo y términos de desarrollador exactamente. Clave de mensaje `appflow_cta_questions` (Preguntas de CTA de Appflow). | Fragmento de texto HTML de una cadena de UI de Capgo más larga (clave de mensaje `capwesome_cta_questions`). Página/área: Página de comparación de Capawesome. Papel: Párrafo de marketing o legal largo. Visto en: página capwesome.astro. Preservar términos de producto y marca de Capgo y términos de desarrollador exactamente. Clave de mensaje `capwesome_cta_questions` (Preguntas de CTA de Capawesome). | Fragmento de texto HTML de una cadena de UI de Capgo más larga (clave de mensaje `consulting_faq_subtitle`). Página/área: Página de servicios de consultoría. Papel: Título de sección o etiqueta. Visto en: página consulting.astro. Preservar términos de producto y marca de Capgo y términos de desarrollador exactamente. Clave de mensaje `consulting_faq_subtitle` (Título de sección de FAQ de consultoría). | Página/área: Copia de marketing de comparación/migración de Appflow. Papel: 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 o)./channel_selfy429with the same error code. Treat this as an intentional policy block, not a transient retry condition.
disable_auto_update_to_major
con el mismo error __CAPGO_KEEP_0__. Trátalo como una política de bloqueo intencional, no como una condición de retry transitoria.Causa
Su canal bloquea actualizaciones importantes (disable_auto_update = major) y la versión mayor del paquete objetivo supera la versión de base del dispositivo.
Síntoma típico
version: 1.0.8 con old: 0.0.0 significa que el dispositivo informa sobre la versión de base 0.0.0Entonces, las actualizaciones importantes se rechazan.
Cómo interpretarlo
El backend compara versiones mayores utilizando la versión de base del dispositivo old y el objetivo version.
- Si el objetivo es
1.0.1La versión mayor de la base del dispositivo debe ser1(por ejemplo)1.0.0). - Si el objetivo es
10.0.1, la versión principal de referencia debe ser10(por ejemplo)10.0.0).
Opción A de corrección (recomendada): alinear la versión principal del dispositivo con la versión principal de referencia
Establecer plugins.CapacitorUpdater.version en capacitor.config.* de modo que su MAJOR coincida con la versión principal de bundle MAJOR que deseas entregar (por ejemplo) 1.0.0 para 1.0.1, 10.0.0 para 10.0.1).
Aplicar luego esta configuración a la aplicación instalada:
- Ejecutar
npx cap sync. - Reconstruir y reinstalar la aplicación nativa.
Opción B: relajar la política de canal
Permitir actualizaciones automáticas entre versiones mayores en los ajustes de canal (solo si esa estrategia de lanzamiento es intencional).
Documentación relacionada:
- Objetivos de versión: Deshabilitar la actualización automática entre versiones mayores
- Canales: Deshabilitar estrategias de actualización automática
disable_auto_update_to_minor / disable_auto_update_to_patch
Sección titulada “desactivar_actualización_a_minor / desactivar_actualización_a_patched”Causa
La política de canal es más estricta (minor o patchque la actualización ofrecida.
minorbloquea cuando el paquete objetivo tiene un número mayor o menor que la versión nativa del dispositivo (version_buildEjemplo:1.2.3 -> 1.3.0está bloqueado.patchbloquea cualquier cambio en el número mayor, menor o parche deversion_buildSolamente se permiten cambios en la sufija mientrasMAJOR.MINOR.PATCHse mantiene igual, como1.0.0-beta.1 -> 1.0.0-beta.2o1.0.0+build.1 -> 1.0.0+build.2.
contexto: fragmento de texto 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 actualización 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 CTAs de Alternativas). | Fragmento de texto 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 CTAs de Appflow). | Fragmento de texto 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 CTAs de Capawesome). | Fragmento de texto 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 encabezado 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 Preguntas Frecuentes 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 solutions/ionic-enterprise-plugins.astro. Clave de mensaje `appflow_plugins_or` (Appflow Plugins O).
- Solución
- change channel policy in dashboard/CLI.
cambiar la política de canal en dashboard/__CAPGO_KEEP_0__.
disable_auto_update_to_metadata
Sección titulada “disable_auto_update_to_metadata”Causa
El canal utiliza la configuración de targeting basada en metadatos (version_number) y la versión del dispositivo está por debajo de la requerida min_update_version.
Solución
- Alinea la versión del dispositivo (
CapacitorUpdater.version) con la versión de la aplicación nativa instalada, o - ajusta
min_update_versionla estrategia del canal.
Documentación relacionada:
disable_auto_update_under_native
Sección titulada “disable_auto_update_under_native”Causa
El canal impide descargas hacia abajo por debajo de la línea base nativa.
Solución
- Subir una versión de paquete mayor o igual a la línea base nativa, o
- desactivar la protección de descarga hacia abajo 'bajo nativo' para ese canal.
Documentación relacionada:
cannot_update_via_private_channel
Sección titulada “cannot_update_via_private_channel”Causa
El canal seleccionado/por defecto no permite la asignación de dispositivo por parte del dispositivo.
Solución
- Utilice un canal diferente con autogeneración habilitada, o
- haga que el canal sea público / habilite la autogeneración.
Documentación relacionada:
unknown_version_build / semver_error
Título de la sección “unknown_version_build / semver_error”Causa
La versión base del dispositivo está en falta (unknown) o no es válida semver.
Solución
- Establezca
plugins.CapacitorUpdater.versiona semver válido como1.2.3. - Sincronice y reconstruya la aplicación nativa.
Documentos relacionados:
unsupported_plugin_version
Sección titulada “versión del plugin no soportada”Causa
La versión del plugin del actualizador es demasiado antigua para las requisitos actuales del servidor.
Solución
- Actualizar
@capgo/capacitor-updater. - Ejecutar
npx cap sync. - Reconstruya y reinstale la aplicación nativa.
disabled_platform_ios / disabled_platform_android
Sección titulada “disabled_platform_ios / disabled_platform_android”Causa
El canal tiene actualizaciones deshabilitadas para esa plataforma.
Solución
- Habilite la opción de plataforma en el canal.
disable_prod_build / disable_dev_build / disable_device / disable_emulator
Sección titulada “disable_prod_build / disable_dev_build / disable_device / disable_emulator”Causa
El canal prohíbe el tipo de compilación actual o el objetivo de tiempo de ejecución.
Solución
- Alinee las opciones del canal (
allow_prod,allow_dev,allow_device,allow_emulator) con su objetivo de prueba.
key_id_mismatch
Sección titulada “key_id_mismatch”Causa
La clave de cifrado del paquete y la clave del dispositivo difieren.
Solución
- Utilice la misma clave de cifrado/clave pública en la configuración de la aplicación y en el flujo de trabajo de cifrado del paquete.
no_channel / null_channel_data
Sección titulada “no_channel / null_channel_data”Causa
No se resolvió un canal válido para el dispositivo.
Solución
- Establezca un canal por defecto en la nube, o
- establezca
defaultChannelen compilaciones de prueba, o - asignar canal de sobrescritura para dispositivo.
Documentos relacionados:
Sección titulada “on_premise_app”
Causa on_premise_appEl servidor de respaldo devolvió HTTP 429 con
- App ID does not exist in Capgo No existe el ID de la aplicación en __CAPGO_KEEP_0__
app_id— el - enviado por el dispositivo no está registrado, por lo que el servidor no tiene registro de él. La aplicación está marcada como en-obra-privada (on-premise) — la aplicación existe pero está configurada para actualizaciones auto-servidas, por lo que el punto de conexión de la nube Capgo se niega a servirla.
- El plan de organización ha sido cancelado — la organización de la aplicación ya no tiene una suscripción activa.
Error común
Un error de ortografía en plugins.CapacitorUpdater.appId (en capacitor.config.ts) or a mismatch with the app ID registered in the Capgo dashboard. The backend cannot distinguish “unknown app” from “on-premise app”, so it returns the same error code.
El backend no puede distinguir entre una aplicación desconocida y una aplicación en la nube, por lo que devuelve el mismo error __CAPGO_KEEP_1__.
- Solución
app_idmatches exactly what is shown in the Capgo dashboard (case-sensitive). - coincida exactamente con lo que se muestra en la consola de __CAPGO_KEEP_0__ (sensible a mayúsculas y minúsculas).
npx @capgo/cli@latest app add. - Si la aplicación no está registrada aún, ejecute
plugins.CapacitorUpdater.updateUrlto your self-hosted update endpoint instead of the Capgo cloud URL. - Si el plan de organización ha expirado, renueva o actualiza el plan.
Lista de verificación diagnóstica rápida
Sección titulada “Lista de verificación diagnóstica rápida”- Confirme que el ID de la aplicación y el canal son correctos para la compilación.
- Confirmar
CapacitorUpdater.versioncoincide con la versión de la aplicación nativa instalada. - Confirme que la política del canal (
disable_auto_update) coincide con la implementación prevista. - Confirme que los interruptores de plataforma/compilación permiten este dispositivo.
- Ejecutar
npx @capgo/cli@latest app debugy lea el error de backend code.
Necesita más ayuda?
¿Necesitas más ayuda?Sigue adelante desde Problemas de Actualización Comunes
Sección titulada “Sigue adelante desde Problemas de Actualización Comunes”Si estás utilizando Problemas de Actualización Comunes para planificar el trabajo nativo de plugins, conecta con Usando @capgo/capacitor-actualizador para la capacidad nativa en Usando @capgo/capacitor-actualizador, Capgo Directorio de Plugins para el flujo de trabajo del producto en Capgo Directorio de Plugins, Capacitor Plugins por Capgo para el detalle de implementación en Capacitor Plugins por Capgo Agregar o Actualizar Plugins para el detalle de implementación en Agregar o Actualizar Plugins, y Alternativas de Plugins de Ionic Enterprise para el flujo de trabajo del producto en Alternativas de Plugins de Ionic Enterprise.