Saltar al contenido

Actualización automática

GitHub

Esta documentación explicará cómo ejecutar su servidor de actualización automática.

Asegúrese de que su paquete esté servido sobre HTTPS, y el servidor tenga los encabezados CORS correctos para permitir que la aplicación descargue la actualización. e.g. https://myserver.com/app/updates/updates.json

If you’re unfamiliar with serving a bundle, we recommend you try Capgo Cloud or see an example here:

Agregar un updateUrl a tu capacitor.config.json.

{
"plugins": {
"CapacitorUpdater": {
"updateUrl": "https://myserver.com/app/updates/updates.json",
}
}
}

El plugin realizará una llamada POST a su API cada vez que se abra la aplicación, con este cuerpo:

interface AppInfos {
"platform": "ios" | "android" | "electron",
"device_id": "UUID_of_device_unique_by_install",
"app_id": "APPID_FROM_CAPACITOR_CONFIG",
"custom_id": "your_custom_id_set_on_runtime",
"plugin_version": "PLUGIN_VERSION",
"version_build": "VERSION_NUMBER_FROM_NATIVE_CODE",
"version_code": "VERSION_CODE_FROM_NATIVE_CODE",
"version_name": "LAST_DOWNLOADER_VERSION" | "builtin"
"version_os": "VERSION_OF_SYSTEM_OS",
"is_emulator": boolean,
"is_prod": boolean,
}

El servidor API debería responder, en formato JSON, al plugin de actualización capacitor. Con esta información si es necesario actualizar:

{
"version": "1.2.3",
"url": "https://myserver.com/app/updates/my-new-app-2.0.0.zip",
"checksum": "sha256_checksum_of_bundle"
}

En modo de actualización automática, el servidor debería comparar las versiones y devolver la correcta, si la clave URL está presente, el plugin inicia el proceso de descarga.

Si agregas las claves ‘mensaje’ y ‘error’, la versión no se establecerá, y el mensaje se mostrará en los registros en su lugar.

version La clave debería estar en semver formato.

El zip debería tener index.html como archivo en la raíz, o solo una carpeta en la raíz con index.html dentro.

Puede usar el comando de CLI para comprimir su paquete:

Crea un paquete con tus archivos para servir desde tu servidor
npx @capgo/cli bundle zip --path [/path/to/my/bundle]

Importante: Debes usar el Capgo CLI para crear tu archivo zip de paquete. El plugin Capgo requiere un formato y estructura zip específicos que solo se garantizan cuando se utiliza la herramienta oficial CLI. Las utilidades de zip estándar pueden crear archivos incompatibles.

Para generar la suma de verificación para tu paquete, utilice el comando Capgo CLI zip con la --json flag:

Crear paquete con información de suma de verificación
npx @capgo/cli bundle zip [appId] --json

Este comando realizará:

  • Crear un archivo zip compatible con el plugin Capgo
  • Generar el checksum SHA256 para la verificación de integridad
  • Mostrar información del paquete en formato JSON

Ejemplo de salida:

{
"version": "1.2.3",
"checksum": "a1b2c3d4e5f6789...",
"size": 1234567
}

Usar el checksum valor de esta salida en su respuesta API para asegurarse de que el plugin pueda verificar la integridad del paquete antes de la instalación.

Si está utilizando Actualizaciones automáticas para planificar la migración y las operaciones de empresa, conecte con ella Usando @capgo/capacitor-actualizador para la capacidad nativa en Usando @capgo/capacitor-actualizador Capgo Empresas para el flujo de trabajo del producto en Capgo Empresas Alternativas de Plugins de Ionic Empresas para el flujo de trabajo del producto en Alternativas de Plugins de Ionic Empresas Capgo Alternativas para el flujo de trabajo del producto en Capgo Alternativas, y Capgo Consultoría para el flujo de trabajo del producto en Capgo Consultoría.