Mettre à jour le point de terminaison API
Voici un exemple de code dans JavaScript pour envoyer une mise à jour du 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: '', } }}Format de réponse
Section titled “Format de réponse”Pour les bundles non chiffrés, votre point de terminaison doit renvoyer :
{ "version": "1.0.2", "url": "https://apiurl.com/mybuild_102.zip", "checksum": "sha256_checksum_of_bundle"}Pour les bundles chiffrés, vous devez également inclure la clé de session :
{ "version": "1.0.2", "url": "https://apiurl.com/mybuild_102.zip", "checksum": "encrypted_checksum_from_encrypt_command", "session_key": "ivSessionKey_from_encrypt_command"}Et si pas de mise à jour ou d’erreur, ajoutez la clé message et éventuellement un error :
{ "message": "Version not found", "error": "The backend crashed", "version": "1.0.2",}Description des champs
Section titled “Description des champs”checksum: hachage SHA256 du fichier zip de votre bundle pour la vérification de l’intégritésession_key: requis uniquement pour les bundles chiffrés - il s’agit duivSessionKeyrenvoyé par la commande encryptversion: Identifiant de version au format semverurl: URL HTTPS où le bundle peut être téléchargé
Création de bundles
Section titled “Création de bundles”Pour savoir comment créer des bundles compatibles et générer des sommes de contrôle, consultez la documentation de mise à jour automatique.
Pour les bundles chiffrés, consultez la documentation sur les bundles chiffrés qui explique le flux de travail de chiffrement complet.