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 se sirva sobre HTTPS, y que el servidor tenga los encabezados CORS correctos para permitir que la aplicación descargue la actualización. 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:

Servir un Paquete

Configuración

Sección titulada “Configuración” updateUrl Agregar un capacitor.config.json.

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

El plugin realizará una llamada POST a tu 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 una actualización:

{
"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 debe estar en semver format.

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

Puedes usar el comando de la CLI para zipar tu paquete:

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

Importante: Debes usar la Capgo CLI para crear tu archivo zip de paquete. El plugin Capgo requiere un formato y estructura de 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, utiliza la Capgo CLI comando de zip con --json flag:

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

Esta orden 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 tu respuesta API para asegurarte de que el plugin pueda verificar la integridad del paquete antes de la instalación.

Si estás utilizando Actualización automática para planificar la migración y las operaciones empresariales, conecta con 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 plugin empresarial de Ionic para el flujo de trabajo del producto en Alternativas de plugin empresarial de Ionic, Capgo Alternativas para el flujo de trabajo del producto en Capgo Alternativas, y Consultoría Capgo para el flujo de trabajo del producto en Consultoría Capgo