Aller au contenu principal

Vue d'ensemble de TkushPatch

TkushPatch est une solution souveraine et auto-hébergée de distribution continue de code (Over-The-Air Code Push) dédiée aux applications mobiles développées avec le framework Flutter.

Le problème résolu​

Dans le cycle de publication mobile traditionnel, chaque correction de bogue ou mise à jour nécessite :

  1. La recompilation intégrale de l'application.
  2. La soumission aux magasins d'applications (Google Play Store, Apple App Store).
  3. Une période d'attente d'approbation humaine et automatique (pouvant aller de quelques heures à plusieurs jours).
  4. Le téléchargement manuel ou différé de la mise à jour par les utilisateurs finaux.

TkushPatch supprime ce goulot d'étranglement pour tout le code Dart : les correctifs critiques sont déployés à chaud, directement sur les terminaux des utilisateurs en quelques minutes, sans interruption de service ni passage par les magasins.

Flux de distribution en direct

Modification du code Dart ➔ Génération du correctif compressé ➔ Signature cryptographique ➔ Distribution sécurisée ➔ Application instantanée sur le mobile

Composants de la plateforme​

ComposantRôleDescription
Serveur TkushPatchCœur de distributionGestion des releases, calcul des correctifs, application des politiques de rollout et sécurité.
Console WebAdministrationTableau de bord moderne pour suivre les versions, approuver les correctifs à 4-yeux et superviser la flotte.
CLI tk-ota-pushOutil développeurLigne de commande pour créer les releases et publier les patchs en local ou dans la CI/CD.
SDK Client tk_ota_pushBibliothèque mobileModule Flutter pour la vérification automatique en arrière-plan et la reprise sur incident.

Ce qui est possible et ce qui ne l'est pas​

Portée des mises à jour OTA
  • Supporté : Tout le code source Dart, les widgets, la logique métier, la gestion d'état, les assets déclarés dans pubspec.yaml, et les dépendances packages pures Dart.
  • Non supporté : Les modifications de code natif (Java, Kotlin, Swift, Objective-C, C/C++), l'ajout de permissions dans AndroidManifest.xml ou Info.plist, et les bibliothèques tierces avec liaisons natives non incluses dans la release de base.