Problemas de Actualización Comunes
Copie un comando 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 actualizaciones, Capgo devuelve normalmente un error code y un message en el /updates en 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__’ explícito.
errorcode. - mientras 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 habilitado y la solicitud provino de un rango de direcciones IP de un centro de datos de Google o Apple conocido. Capgo bloquea estas solicitudes en /updates, /stats, y /channel_self 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 que esta protección está habilitada.
- Si ese tráfico es intencional, abra la pestaña Información y apague Blockar solicitudes de infraestructura del proveedor. Rehabilitarlo cuando la prueba esté completa.
Nuevas aplicaciones tienen esta protección habilitada por defecto. Las aplicaciones creadas antes de que se introdujera 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")./statsy/channel_selfdevuelve HTTP429with the same error code. Treat this as an intentional policy block, not a transient retry condition.
disable_auto_update_to_major
, yProblema
Tu canal bloquea actualizaciones importantes (disable_auto_update = major) y la versión mayor del paquete objetivo es superior a la versión de base del dispositivo.
Simpatía típica
version: 1.0.8 con old: 0.0.0 significa que el dispositivo informa la versión de base 0.0.0, por lo tanto, las actualizaciones importantes se rechazan.
Cómo interpretarlo
El backend compara versiones mayores utilizando la versión de base del dispositivo old y objetivo version.
- Si objetivo es
1.0.1, la 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 base debe ser10(por ejemplo)10.0.0).
Opción A de solución (recomendada): alinear la versión principal del dispositivo de base
Establecer plugins.CapacitorUpdater.version en capacitor.config.* de manera que su MAJOR coincida con la versión principal del paquete MAJOR que deseas entregar (por ejemplo) 1.0.0 para 1.0.1, 10.0.0 para 10.0.1).
Entonces aplique esta configuración a la aplicación instalada una vez:
- Ejecutar
npx cap sync. - Reconstruya e instale la aplicación nativa nuevamente.
Opción de solución B: relajación de 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
Título de sección “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.
minorse bloquea 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.patchse bloquea cualquier cambio de número mayor, menor o parche desdeversion_buildSolamente se permiten cambios de sufijo mientrasMAJOR.MINOR.PATCHse mantiene igual, como1.0.0-beta.1 -> 1.0.0-beta.2o1.0.0+build.1 -> 1.0.0+build.2.
¿Por qué no elegir
- soluciones alternativas?
- change channel policy in dashboard/CLI.
Subir un paquete compatible con la política actual, o
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 de dispositivo está por debajo de la requerida min_update_version.
Solución
- Alinea la versión de dispositivo con la versión de la aplicación nativa instalada, o
CapacitorUpdater.versionajusta - la estrategia del canal.
min_update_versionDocumentación relacionada:
Canales: Deshabilitar estrategias de actualización automática
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 para ese canal.
Documentos relacionados:
cannot_update_via_private_channel
Sección titulada “cannot_update_via_private_channel”Causa
El canal seleccionado/no seleccionado 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.
Documentos relacionados:
unknown_version_build / semver_error
Título de la sección “versión desconocida de construcción / error de semver”Causa
La versión base del dispositivo está en blanco (unknown) o no válida semver.
Solución
- Establezca
plugins.CapacitorUpdater.versiona semver válido como1.2.3. - Sincronice y reconstruye 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
- Actualiza
@capgo/capacitor-updater. - Ejecuta
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 el interruptor 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 “aplicación en sitio”
Causa on_premise_appEl servidor de respaldo devolvió HTTP 429 con
- App ID does not exist in Capgo El ID de la aplicación no existe en __CAPGO_KEEP_0__
app_id— el - enviado por el dispositivo no está registrado, por lo que el servidor no tiene registro de él. — the app exists but is configured for self-hosted updates, so the Capgo cloud endpoint refuses to serve it.
- 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 el lugar de trabajo, 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. - If the organization plan has expired, renew or upgrade the plan.
Lista de verificación diagnóstica rápida
Lista de verificación diagnóstica rápida- Confirme que el ID de la aplicación y el canal están 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?
¿Necesita más ayuda?Siga adelante desde Problemas comunes de actualización
Sección titulada “Siga adelante desde Problemas comunes de actualización”Si está utilizando Problemas comunes de actualización para planificar el trabajo de plugin nativo, conecte con Usando @capgo/capacitor-actualizador para la capacidad nativa en Usando @capgo/capacitor-actualizador, Capgo Carpeta de plugin para el flujo de trabajo del producto en Capgo Carpeta de plugin, 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.