Saltar al contenido

Actualizar Endpoint de API

GitHub

Aquí hay un ejemplo de code en JavaScript para enviar una actualización al plugin

interface AppInfos {
version_name: string
version_build: string
version_os: string
custom_id?: string
is_prod?: boolean
is_emulator?: boolean
plugin_version: string
platform: string
app_id: string
device_id: string
}
export const handler: Handler = async (event) => {
const body = JSON.parse(event.body || '{}') as AppInfos
const {
platform,
app_id,
version_os,
device_id,
version_name,
version_build,
plugin_version,
} = body
console.log('update asked', platform,
app_id,
version_os,
device_id,
version_name,
version_build,
plugin_version)
if (version_name === '1.0.0') {
return {
version: '1.0.1',
url: 'https://apiurl.com/mybuild_101.zip',
checksum: 'sha256_checksum_of_bundle',
}
}
else if (version_name === '1.0.1') {
return {
version: '1.0.2',
url: 'https://apiurl.com/mybuild_102.zip',
checksum: 'sha256_checksum_of_bundle',
}
}
else {
return {
message: 'Error version not found'
version: '',
url: '',
}
}
}

Para paquetes no cifradosPara

{
"version": "1.0.2",
"url": "https://apiurl.com/mybuild_102.zip",
"checksum": "sha256_checksum_of_bundle"
}

Para Los paquetes cifradosPara copiar a portapapeles, también necesitas incluir la clave de sesión:

{
"version": "1.0.2",
"url": "https://apiurl.com/mybuild_102.zip",
"checksum": "encrypted_checksum_from_encrypt_command",
"session_key": "ivSessionKey_from_encrypt_command"
}

Y si no hay actualización o error, agrega el message clave y opcionalmente un error:

{
"message": "Version not found",
"error": "The backend crashed",
"version": "1.0.2",
}
  • checksum: __CAPGO_KEEP_0__
  • session_key: Requerido solo para paquetes cifrados - esto es el ivSessionKey devuelto por el comando de cifrado
  • version: Identificador de versión en formato de semver
  • url: URL HTTPS donde el paquete puede ser descargado

Para aprender a crear paquetes compatibles y generar sumas de comprobación, consulte la documentación de actualizaciones automáticas.

Para paquetes cifrados, consulte la documentación de paquetes cifrados que explica el flujo de cifrado completo.

Si estás utilizando Actualizar API Endpoint para planificar la automatización de CI/CD, conecta con Usando @capgo/capacitor-actualizador para la capacidad nativa en Usando @capgo/capacitor-actualizador, Capgo CI/CD para el flujo de trabajo del producto en Capgo CI/CD, Capgo Compilaciones nativas para el flujo de trabajo del producto en Capgo Compilaciones nativas, Capgo Integraciones para el flujo de trabajo del producto en Capgo Integraciones, y Integración CI/CD para el detalle de implementación en Integración CI/CD.