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 :
- La recompilation intégrale de l'application.
- La soumission aux magasins d'applications (Google Play Store, Apple App Store).
- Une période d'attente d'approbation humaine et automatique (pouvant aller de quelques heures à plusieurs jours).
- 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
| Composant | Rôle | Description |
|---|---|---|
| Serveur TkushPatch | Cœur de distribution | Gestion des releases, calcul des correctifs, application des politiques de rollout et sécurité. |
| Console Web | Administration | Tableau de bord moderne pour suivre les versions, approuver les correctifs à 4-yeux et superviser la flotte. |
CLI tk-ota-push | Outil développeur | Ligne de commande pour créer les releases et publier les patchs en local ou dans la CI/CD. |
SDK Client tk_ota_push | Bibliothèque mobile | Module 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.xmlouInfo.plist, et les bibliothèques tierces avec liaisons natives non incluses dans la release de base.