Endpoint API de Actualización
Aquí hay un ejemplo de código 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: '', } }}Formato de Respuesta
Section titled “Formato de Respuesta”Para Paquetes no encriptados, tu endpoint debe devolver:
{ "version": "1.0.2", "url": "https://apiurl.com/mybuild_102.zip", "checksum": "sha256_checksum_of_bundle"}Para Paquetes encriptados, 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 la clave message y opcionalmente un error:
{ "message": "Version not found", "error": "The backend crashed", "version": "1.0.2",}Descripciones de Campos
Section titled “Descripciones de Campos”checksum: Hash SHA256 de tu archivo zip del Paquete para verificación de integridadsession_key: Requerido solo para Paquetes encriptados - este es elivSessionKeydevuelto por el comando encryptversion: Identificador de versión en formato semverurl: URL HTTPS donde el Paquete puede ser descargado
Creación de Paquete
Section titled “Creación de Paquete”Para aprender cómo crear Paquetes compatibles y generar checksums, consulta la documentación de Actualización Automática.
Para Paquetes encriptados, consulta la documentación de Bundles Encriptados que explica el flujo de trabajo completo de encriptación.