Flutter
Flutter / Dart : une base de code pour iOS et Android, plus web et desktop
Le toolkit UI de Google, en Dart. Il dessine lui-même chaque pixel : un design de marque sur mesure et ses animations ont le même rendu sur iOS et Android. Une équipe, une base de code, et des builds web et desktop à partir du même code. Les contreparties : un vivier de recrutement plus petit qu’en JavaScript, et les nouvelles fonctions des plateformes arrivent via des plugins, parfois avec du retard.
React Native
React Native (Expo inclus) : JavaScript / TypeScript, composants UI natifs
Le framework de Meta en JavaScript ou TypeScript, avec Expo comme outillage par défaut et la nouvelle architecture activée par défaut. Il affiche de vrais composants de la plateforme : les écrans standards semblent à leur place sur chaque OS. Il excelle quand votre équipe écrit déjà du React ou quand l’app partage de la logique avec un produit web. Les graphismes sur mesure lourds sont son point faible.
Natif iOS + Android
Swift / SwiftUI pour iOS et Kotlin / Compose pour Android : deux bases de code
Deux applications, chacune dans le langage et le toolkit UI de sa plateforme. Vous profitez de chaque nouvelle fonction de l’OS dès le premier jour, du meilleur accès au matériel (Bluetooth, données de santé, widgets, caméra) et du ressenti le plus familier. Le prix : deux bases de code, soit environ 1,4 à 1,8 fois le coût de développement d’une app cross-platform, et deux équipes à synchroniser.
Kotlin Multiplatform
Kotlin Multiplatform : logique métier partagée, UI native ou Compose Multiplatform
Partage la logique métier, le réseau et les données en Kotlin, tandis que chaque plateforme garde une UI native ou utilise Compose Multiplatform pour des écrans communs. Convient aux équipes qui ont déjà des apps natives ou des ingénieurs Android et veulent moins de duplication sans tout réécrire. L’écosystème est plus jeune : prévoyez du temps pour l’outillage et l’intégration iOS.
PWA
Progressive Web App, éventuellement packagée avec Capacitor ou TWA pour les stores
Une application web qui s’installe sur l’écran d’accueil et fonctionne hors ligne dans les limites du navigateur. C’est la voie la moins chère et la plus rapide quand un lien ou un QR code suffit et que l’app se compose surtout de contenu et de formulaires. Sur iOS, les notifications push, les tâches en arrière-plan, le stockage et l’accès à l’appareil sont plus limités que dans une app native, et une publication en store nécessite un wrapper.