La face cachée des applications mobiles natives
Par Hélène Quoitot - 18 Avr, 2025
Peut-être avez-vous déjà songé à développer ou faire développer votre propre application mobile ? Vous hésitez sur la technologie à utiliser, si vous partez sur une application dite “native” ou non ? Avant de vous décider, il y a des éléments à prendre en compte.
Voici une liste non exhaustive des points négatifs d’une application mobile native, rendant ainsi d’autres solutions beaucoup plus avantageuses :
Coût élevé et durée de développement
Chaque plateforme nécessite des développements spécialisés. L'utilisation d'une librairie permettant de gérer Android et iOS en même temps peut rendre le développement plus rapide, mais n'empêche pas les problèmes typiques liés au mobile.
Maintenance et mises à jour compliquées
Les mises à jour nécessitent de passer par les stores d'applications, ce qui peut rendre le processus long et complexe. L'application dépend donc de ces stores et si les conditions d'utilisation changent, il faut réagir en conséquence sous peine de voir son application retirée.
De plus, les temps de validation des applications par les stores peuvent être assez longs. Ils vous forceront parfois à mettre à jour vos librairies, ce qui peut se révéler très compliqué et vous vous demanderez même s'il n'est pas plus facile de recoder toute l'application de zéro plutôt que de les mettre à jour.
Les utilisateurs ne mettant pas toujours à jour leurs applications dès qu'une nouvelle version est disponible, les données envoyées côté serveur doivent donc toujours être compatibles avec les différentes versions de l'application.
Compatibilité
Même en utilisant des librairies du style React Native, il arrive souvent qu'il y ait des différences notables entre les plateformes. Gérer l'uniformisation est compliqué, chaque plateforme possédant ses propres spécificités.
Gestion des permissions
Une application mobile native nécessite souvent de nombreuses permissions, ce qui pourrait inquiéter certains utilisateurs et les amener à les refuser, voire à ne pas du tout installer l’app.
Temps de testing
Les applications natives nécessitent des tests approfondis pour chaque plateforme, allongeant ainsi considérablement les temps de développement. Les développeurs doivent redoubler de patience lors des différentes phases de test, car le lancement de l’application peut parfois être long.
De plus, certains utilisateurs auront des problèmes spécifiques liés à leur smartphone, là où chez d'autres aucun problème ne sera détecté.
Outils de développement
Le développement pour iOS nécessite l'utilisation d'un Mac : sans, vous ne pourrez ni tester sur simulateur, ni sur un appareil physique.
Votre Mac doit aussi toujours être à jour pour continuer à utiliser la dernière version de Xcode et vous permettre de lancer l'application sur simulateur ou sur appareil physique. Vous l'aurez compris, votre vieux Mac ne vous servira plus que comme cale-porte et ne vous aidera en rien à développer des applications pour les nouveaux modèles de smartphones.
Build & testing sur appareils physiques
Tester sur un simulateur, c'est très facile. Déployer sur des appareils physiques l'est déjà beaucoup moins et nécessitera beaucoup de patience et des adaptations parfois biscornues.
Gestion des stores
Une fois toutes ces phases terminées, le calvaire n'est pas encore fini, chaque store a ses particularités, vous ne pourrez pas ajouter votre application d'un claquement de doigts. Il faudra encore fournir des captures d'écran de tailles prédéfinies et accéder à toutes les demandes biscornues des stores.
Une alternative au... natif ?
Vous l'aurez compris, si vous n'avez pas obligatoirement besoin d'une application native, nous préférons privilégier une approche souple qui combine les avantages du développement web et d'une application mobile : la Progressive Web App (PWA).
Mais tout d'abord, qu'est-ce qu'une PWA? C'est une application web qui peut offrir une expérience utilisateur similaire à celle d'une application mobile native. La différence majeure est qu'une PWA n'est pas téléchargée depuis l'un des stores d'applications (Google Play Store et App Store), mais est accessible via un navigateur web. De là, l'utilisateur peut choisir de l'ajouter à l'écran d'accueil et donc l'utiliser de la même manière qu'une application mobile classique. De nos jours, une Progressive Web App possède quasiment les mêmes fonctionnalités qu'une application native bien qu'un peu plus limitées (caméra, localisation, notifications...).
Cette alternative est beaucoup plus économique et moins casse-tête, car derrière il s'agit de technologies web :
- Un seul développement pour toutes les plateformes
- Expérience homogène pour les différentes plateformes
- Pas de restriction au niveau matériel
- Mise à jour instantanée
- Moins d'arrachage de cheveux et des développeurs plus sereins
En conclusion, une PWA nécessitera un temps de développement plus réduit et coûtera par conséquent moins cher, tout en gardant les avantages des applications web.
Les applications mobiles natives, vous l'aurez compris, sont synonymes de contraintes et de magie noire.
Avant de vous lancer, il est essentiel d'évaluer si votre future application nécessite réellement une présence sur les stores ou si elle a des besoins spécifiques auxquels une PWA ne peut répondre.