Application mobile native ou multiplateforme ?

Selon Mesterséges Intelligencia Központ Kft., société de développement logiciel basée à Budapest, une application native s'impose lorsqu'elle exploite en profondeur l'appareil ; si les deux plateformes ont besoin des mêmes fonctions, une base de code commune est plus simple à maintenir.

L'essentiel : la décision dépend des fonctionnalités, pas de la mode : à quel point l'application doit accéder en profondeur à l'appareil, quelles performances elle exige, et qui la maintiendra pendant des années. Si la présence en boutique et un accès poussé à l'appareil ne comptent pas, une application web (PWA) peut suffire. Quelle que soit la voie choisie, le back-end, les règles des boutiques et les mises à jour régulières des systèmes d'exploitation représentent une part importante du travail.

Que signifient application native, multiplateforme et web ?

Une application mobile peut être réalisée de trois manières : séparément pour chaque plateforme, avec les outils propres à celle-ci ; à partir d'une base de code commune, compilée pour les deux plateformes ; ou avec les technologies du web, en s'exécutant dans le navigateur. Les trois voies donnent une application qui fonctionne ; la différence tient à l'accès à l'appareil, à la maintenance, et aux règles de qui l'application doit suivre dans ses mises à jour.

Application native

Pour une application native, les versions iOS et Android sont développées séparément, dans le langage et avec les outils d'interface propres à chaque plateforme. Sur iOS, il s'agit aujourd'hui généralement du langage Swift et de SwiftUI : selon Apple, SwiftUI, fondé sur le langage Swift, permet de construire l'interface sur toutes les plateformes Apple grâce à une syntaxe déclarative (Apple : SwiftUI). Sur Android, il s'agit de Kotlin et de Jetpack Compose : Google présente Jetpack Compose comme la boîte à outils moderne recommandée par Android pour créer des interfaces natives (Android Developers : Jetpack Compose), et conseille de démarrer toute nouvelle application Android avec Kotlin (Android Developers : Kotlin-first). L'avantage de la voie native est que toute nouvelle possibilité de la plateforme est directement accessible dès le premier jour ; l'inconvénient est qu'il faut développer et maintenir deux bases de code.

Frameworks multiplateformes

Avec les frameworks multiplateformes, les applications iOS et Android sont construites à partir d'une base de code commune. Quatre approches courantes :

Application web progressive (PWA)

La PWA est une application web qui s'exécute dans le navigateur, peut être installée sur l'écran d'accueil et offre une expérience plus fiable grâce à des fonctions qui s'enrichissent progressivement (progressive enhancement). Selon la synthèse de web.dev, les applications de plateforme sont les plus fortes en capacités, les applications web en portée : une seule base de code atteint n'importe qui, sur n'importe quel appareil (web.dev : Progressive Web Apps). Sur iOS et iPadOS, depuis la version 16.4, une application web ajoutée à l'écran d'accueil peut elle aussi demander l'autorisation d'envoyer des notifications push (WebKit : Web Push for Web Apps). Une limite importante : selon le point 4.2 des directives de l'App Store, une application doit offrir davantage qu'un site web reconditionné ; il ne vaut donc pas la peine de publier en boutique un site web simplement emballé dans une application (Apple : App Store Review Guidelines).

Comparaison en un tableau

CritèreNatif (Swift, Kotlin)Multiplateforme (Flutter, React Native, KMP, .NET MAUI)PWA
Performancesoptimisables directement avec les outils de la plateformeles parties gourmandes en calcul peuvent être confiées à du code natifdéterminées par le navigateur et la technologie web
Accès à l'appareiltoutes les fonctions de la plateforme, dès le premier jourvia le framework ou une extension ; une nouvelle fonction arrive plus tard ou exige du code natif complémentairelimité aux interfaces web prises en charge par le navigateur
Apparence et ergonomieexactement les composants propres à la plateformecomposants dessinés par le framework avec Flutter, composants natifs avec React Nativeproche d'un site web, dépend du navigateur
Partage du codeaucun, deux bases de code distinctesla logique et, le plus souvent, l'interface sont communesune seule base de code pour tous les appareils
Équipecompétences iOS et Android distinctesune seule équipe, mais il faut aussi connaître les couches nativesune équipe de développement web
Maintenancedeux bases de code suivent les évolutions régulières des plateformesune base de code, plus les mises à jour propres au frameworkpas de publication en boutique ; il faut suivre l'évolution des navigateurs
Taille de l'applicationrepose sur les bibliothèques propres au systèmele moteur du framework est aussi intégré à l'applicationpas de paquet d'installation ; le navigateur met en cache
Présence en boutiqueouiouipas nécessaire ; si elle est emballée pour la boutique, la limite du point 4.2 s'applique

La documentation de Flutter le dit d'ailleurs explicitement : le paquet d'une application Flutter est autonome et contient tout le code et toutes les ressources nécessaires à son exécution ; sa taille peut donc être un critère (Flutter : Measuring your app's size). En pratique, cette différence est rarement décisive, mais il est bon de la connaître si le public cible utilise l'application sur des appareils anciens ou avec une connexion faible.

Quand choisir quelle solution ?

Natif, si

Multiplateforme, si

PWA ou application web, si

Ici non plus, les frontières ne sont pas nettes. Avec Kotlin Multiplatform, par exemple, la logique métier peut être commune tandis que l'interface reste native ; avec Flutter et React Native, une partie critique peut aussi être écrite en code natif. Le jeu de notre propre site fonctionne comme une application web : il tourne dans le navigateur sans installation, de la même façon sur ordinateur et sur téléphone. Nous présentons la voie web sur la page Création de sites web et développement d'applications web.

Le back-end et l'interface d'administration

Une application mobile fonctionne rarement seule. Dès qu'elle a des comptes utilisateurs, des données partagées ou des notifications, il lui faut un serveur : c'est là que vivent les comptes, les données et les droits d'accès, et c'est de là que partent les notifications. Le back-end envoie généralement les notifications push par l'intermédiaire d'un service dédié ; Firebase Cloud Messaging, par exemple, est une solution de messagerie multiplateforme dans laquelle un environnement serveur de confiance compose et envoie les messages aux applications Apple, Android et web (Firebase : Cloud Messaging).

L'interface d'administration est le panneau de commande du back-end : depuis le navigateur, on y modifie le contenu et on gère les utilisateurs et les réglages, pour que les changements du quotidien ne nécessitent pas de développeur. C'est aussi là que nous connectons les systèmes d'entreprise existants, comme un logiciel de gestion de la relation client, une gestion des stocks ou un logiciel de facturation, pour que l'application travaille avec les mêmes données que le reste de l'entreprise. S'il n'existe pas encore de tel système, nous le construisons aussi, comme logiciel sur mesure. Le choix entre natif et multiplateforme n'a pas d'incidence sur le back-end : le même serveur peut desservir aussi bien une application native qu'une application réalisée avec Flutter.

Publication en boutique : à quoi faut-il veiller en octobre 2026 ?

Les règles des boutiques changent souvent ; nous précisons donc la date des points ci-dessous (vérifié le 17 octobre 2026).

App Store (Apple)

Google Play

Ces règles s'appliquent indépendamment de la technologie : une application réalisée avec Flutter ou React Native doit satisfaire aux mêmes exigences de niveau d'API cible et de SDK qu'une application native ; les mises à jour du framework doivent les suivre. Nous recommandons que le compte développeur appartienne à l'entreprise cliente : ainsi, l'application paraît sous le nom de votre entreprise, et la fiche en boutique reste aussi la propriété de votre entreprise.

Accessibilité

Les deux plateformes intègrent un lecteur d'écran (VoiceOver sur iOS, TalkBack sur Android) et fournissent des interfaces permettant aux applications de fonctionner avec ces technologies d'assistance (React Native : Accessibility). La documentation de Flutter recommande par exemple que le lecteur d'écran décrive chaque commande de façon compréhensible, que le rapport de contraste entre le texte et l'arrière-plan soit d'au moins 4,5:1, et que chaque élément tactile mesure au moins 48×48 pixels (Flutter : Accessibility). La documentation d'Android recommande les directives de Material Design, l'outil Accessibility Scanner et des contrôles automatisés pour détecter les problèmes (Android Developers : Accessibility).

Ce n'est pas seulement une bonne pratique : selon la directive (UE) 2019/882, les États membres doivent appliquer, à partir du 28 juin 2025, les exigences en matière d'accessibilité aux services de commerce électronique fournis aux consommateurs (y compris ceux fournis au moyen d'applications mobiles), les règles hongroises reposant sur la transposition de la directive ; les microentreprises qui fournissent des services doivent en être exemptées (EUR-Lex : directive (UE) 2019/882). Les détails concernant les boutiques en ligne sont traités dans l'article Boutique en ligne : plateforme hébergée ou développement sur mesure ?.

L'intelligence artificielle : sur l'appareil ou dans le cloud ?

Dans une application mobile, une fonction d'IA peut s'exécuter à deux endroits : sur le téléphone lui-même, ou auprès d'un grand modèle de langage hébergé dans le cloud, via le back-end.

Le modèle exécuté sur l'appareil est intéressant pour la protection des données et le fonctionnement hors ligne, mais il n'est pas disponible sur l'appareil de chaque utilisateur ; il vaut donc généralement mieux le concevoir avec une solution de repli dans le cloud. La connexion des modèles est présentée sur la page Intégration d'IA.

De quoi dépend la maintenance ?

Une application mobile n'est pas terminée à la livraison : son environnement évolue en permanence. Le travail de maintenance est principalement déterminé par les éléments suivants :

Erreurs fréquentes

Questions fréquentes

Natif ou Flutter/React Native ?

Si l'application exploite en profondeur l'appareil (caméra, capteurs, processus en arrière-plan) ou exige de hautes performances, le développement natif est la voie la plus sûre. Si les deux plateformes ont besoin des mêmes fonctions, une application à base de code commune réalisée avec Flutter ou React Native est plus simple à maintenir. Kotlin Multiplatform offre une voie intermédiaire : logique métier commune, interface native. Lors du premier échange, nous faisons une recommandation à partir des fonctions concrètes.

Quand une application web (PWA) suffit-elle ?

Lorsque les utilisateurs arrivent par un lien ou depuis le site web, qu'un accès poussé à l'appareil n'est pas nécessaire, et qu'il importe que l'application fonctionne de la même façon sur ordinateur et sur téléphone. Elle peut être installée sur l'écran d'accueil et envoyer des notifications push, y compris sur iOS, mais elle n'offre pas de présence en boutique, et l'éventail des fonctions de l'appareil dépend du navigateur.

Faut-il un back-end ?

Presque toujours : dès que l'application a des comptes utilisateurs, des données partagées ou des notifications, il lui faut un serveur. L'exception est l'application qui ne stocke ses données que sur l'appareil. Nous construisons aussi le back-end et l'interface d'administration, et les connectons aux systèmes d'entreprise existants.

Qui publie l'application dans les boutiques ?

Nous nous chargeons de la publication : nous préparons les éléments de la fiche en boutique et les déclarations de confidentialité, soumettons l'application et accompagnons la validation jusqu'au bout. Nous recommandons que le compte développeur appartienne à votre entreprise ; pour un compte d'organisation, les deux boutiques demandent un numéro D-U-N-S, qu'il vaut donc mieux se procurer à temps.

De quoi dépend le coût de la maintenance ?

Du nombre de bases de code à maintenir, de la fréquence à laquelle les systèmes d'exploitation et les exigences des boutiques évoluent, du nombre de composants tiers et d'intégrations utilisés par l'application, et du volume d'évolutions prévues. Nous établissons le prix du développement à partir de la taille fonctionnelle ; la méthode est décrite sur la page Tarification.

Comment pouvons-nous vous aider ?

Nous développons des applications iOS et Android : nous construisons le back-end et l'interface d'administration qui les accompagnent, intégrons l'intelligence artificielle et menons le tout jusqu'à la publication en boutique. Nous prenons ensemble, à partir des fonctions, la décision entre natif et multiplateforme. Le détail du service est présenté sur la page Développement d'applications mobiles.

Nous mesurons la taille fonctionnelle du développement en points de fonction COSMIC (ISO/IEC 19761), et en tirons l'offre et le calendrier. Le premier échange est gratuit, sur demande nous signons un accord de confidentialité (NDA), et après la livraison nous assurons aussi l'exploitation et la maintenance. Le code source et les droits d'utilisation sont régis par le contrat. Décrivez votre idée en quelques phrases et prenez contact avec nous.

Sources