Saltar al contenido

Tipos de actualizaciones

Capgo admite varios tipos de actualizaciones por aire (OTA). Esta página enumera y explica todos ellos para que puedas elegir la combinación adecuada para tu aplicación.

Controles cuando una actualización se aplica después de descargarla. El plugin verifica actualizaciones cuando la aplicación se mueve al primer plano y en un temporizador repetido mientras la aplicación permanece abierta. periodCheckDelay controles ese intervalo (por defecto 10 minutos).

TipoDescripciónUso
autoUpdate: atBackgroundVerificar y descargar en cada verificación de primer plano, aplicar cuando la aplicación se mueve al segundo planoLa mayoría de las aplicaciones; interrupción mínima
__CAPGO_KEEP_0__ atInstallAplicar inmediatamente solo después de una instalación fresca o actualización de tienda de aplicaciones nativa; en caso contrario, utilice atBackgroundLos nuevos usuarios obtienen la versión más reciente; los usuarios existentes utilizan aplicar en segundo plano
__CAPGO_KEEP_0__ onLaunchAplicar inmediatamente solo en arranque frío (killed → foreground); luego caiga en la opción de atBackgroundEquilibrio entre frescura y estabilidad de sesión
__CAPGO_KEEP_0__ alwaysVerificar en cada transición de primer plano y aplicar inmediatamente siempre que esté disponible una actualizaciónArreglos críticos, aplicaciones con estado simple
__CAPGO_KEEP_0__ onlyDownloadVerificar y descargar automáticamente, emitir updateAvailabley nunca aplicar automáticamenteLas aplicaciones que muestran su propio prompt de actualización o controlan exactamente cuándo llamar set()

Configurar en capacitor.config.ts:

plugins: {
CapacitorUpdater: {
autoUpdate: 'atBackground', // default; true is still accepted
// or: 'off' | 'atInstall' | 'onLaunch' | 'always' | 'onlyDownload'
}
}

Condiciones que deben cumplirse antes de que se active la actualización Se instala una actualización. Utilice setMultiDelay para combinarlos (deben satisfacerse todas las condiciones).

CondiciónDescripciónEjemplo
FechaEspera hasta después de una fecha/hora específicaCoordina con la liberación del lado del servidor
FondoEspera un mínimo de duración (ms) después de que la aplicación esté en segundo planoEvita aplicar durante cambios rápidos de aplicación
Versión nativaRequiere una versión mínima de binario nativoBloquear actualizaciones en binarios nativos incompatibles con code
killEsperar a la próxima señal de muerte de la aplicaciónAplicar solo en reinicio completo
import { CapacitorUpdater } from '@capgo/capacitor-updater';
await CapacitorUpdater.setMultiDelay({
delayConditions: [
{ kind: 'date', value: '2023-06-01T00:00:00.000Z' },
{ kind: 'background', value: '60000' },
],
});

Controla qué actualizaciones semver un canal auto-enviará. Establecido a través de --disable-auto-update en canales.

EstrategiaBloqueaPermiteUso de Caso
NingunoNadaCualquier versión de paquete objetivoPredeterminado; actualización completa automática
mayorMás mayor que version_build, por ejemplo 1.2.3 -> 2.0.0Con el mismo mayor, por ejemplo 1.2.3 -> 1.9.0 o 1.2.3 -> 1.2.4evitar cambios que rompan la compatibilidad con versiones antiguas de code
menorDiferente mayor o menor que version_build, por ejemplo 1.2.3 -> 1.3.0Con el mismo mayor y menor, por ejemplo 1.2.3 -> 1.2.4Mantener actualizaciones dentro de una línea menor de __CAPGO_KEEP_0__
patchCualquier cambio en el número mayor, menor o de parche, por ejemplo 1.0.0 -> 1.0.1Solo cambian los sufijos mientras MAJOR.MINOR.PATCH se mantiene igual, por ejemplo 1.0.0-beta.1 -> 1.0.0-beta.2 o 1.0.0+build.1 -> 1.0.0+build.2en modo estricto: sin movimiento de versión de núcleo
metadatosfaltante min_update_versiono version_build debajo de élPaquete objetivo cuyo min_update_version es menor o igual a version_buildReglas de compatibilidad personalizadas por paquete

Estos controles comparan el paquete objetivo contra la base de línea nativa enviada como version_build, no el paquete descargado instalado enviado como version_name.

ventana de terminal
npx @capgo/cli channel set production --disable-auto-update major

Cómo se transfiere el paquete al dispositivo.

TipoDescripciónCuándo usar
Paquete completoSe descarga el paquete JS completoPrimera instalación, cambios grandes, o cuando no está disponible el delta
Delta (manifest)Solo se descargan los archivos modificadosLa mayoría de las actualizaciones; más rápidas y amigables con la banda ancha
Ventana de terminal
# Full bundle (default)
npx @capgo/cli bundle upload --channel production
# Delta updates
npx @capgo/cli bundle upload --channel production --delta

para minimizar el tiempo de descarga y mejorar la UX.

Sección titulada “Referencia rápida”
CategoríaTipos
Aplicar el momentooff, atBackground, atInstall, onLaunch, always, onlyDownload
Condiciones de retrasodate, background, nativeVersion, kill
Bloqueo de versiónnone, major, minor, patch, metadata
EntregaPaquete completo, Delta (manifesto)

— Configuración y Precedencia de Canales

Sigue adelante desde Tipos de Actualizaciones

Continúa desde Tipos de Actualizaciones Si estás utilizando Tipos de Actualizaciones para planificar la entrega de actualizaciones en vivo, conecta con ella a las actualizaciones en vivo de Capgo para el flujo de trabajo del producto en Capgo Actualizaciones en vivo, Resumen para el detalle de implementación en Resumen, Características para el detalle de implementación en Características, Comportamiento de la Actualización para el detalle de implementación en Comportamiento de la Actualización, y Iniciar sesión Anterior