- WhatsApp pour Windows 11 passe à un wrapper web basé sur WebView2, et l’ancienne application native WinUI/UWP est abandonnée
- La nouvelle version charge web.whatsapp.com dans un conteneur WebView2 et utilise jusqu’à 300 Mo de RAM dès l’écran de connexion
- Après connexion, la consommation mémoire monte jusqu’à 2 Go, avec en moyenne 1,2 Go de RAM occupés en permanence en arrière-plan
- Des problèmes de baisse de performances, chargement lent et retard des notifications ont été signalés, ainsi qu’une faible compatibilité avec les notifications de Windows 11 et le mode Ne pas déranger
- La mise à jour est en cours de déploiement via le Microsoft Store, et les utilisateurs de l’ancienne application native devraient eux aussi être bientôt forcés de migrer
Changement de version de WhatsApp sur Windows 11
- WhatsApp pour Windows 11 passe d’une application native à un wrapper web basé sur WebView2
- La nouvelle application est conçue pour charger web.whatsapp.com dans un conteneur WebView2
- WhatsApp était d’abord basé sur Electron, puis avait évolué vers une application native UWP/WinUI, avant de revenir à une approche web
- Ce changement entraîne une baisse des performances et une consommation mémoire élevée
Comparaison de la consommation mémoire
- D’après les tests, la nouvelle version WebView2 utilise environ 300 Mo de RAM sur l’écran de connexion
- Après connexion, lors du chargement de toutes les conversations, elle peut atteindre 2 Go de RAM, et conserve en moyenne 1,2 Go de RAM en arrière-plan
- À l’inverse, l’ancienne application native utilisait en moyenne 190 Mo, et descendait sous les 100 Mo au repos
- Même en cas d’activité soutenue, elle restait autour d’un maximum de 300 Mo
- Avec plusieurs fenêtres de conversation ouvertes, la nouvelle version peut monter jusqu’à 3 Go de RAM
Problèmes de performances et de fonctionnalités
- Le nouveau WhatsApp présente une réactivité plus lente et des temps de chargement plus longs
- Des latences apparaissent lors du passage d’une conversation à l’autre
- L’intégration avec le système de notifications de Windows est instable,
avec des problèmes de compatibilité avec le mode Ne pas déranger (Do Not Disturb) et la fonctionnalité Active Hours
- Des retards de notifications ont également été signalés
Mise à jour et possibilités d’évitement
- WhatsApp version 2.2584.3.0 est en cours de déploiement via le Microsoft Store,
et remplace automatiquement l’ancienne application native
- Les utilisateurs peuvent temporairement conserver l’ancienne application en repoussant la mise à jour, mais
tous les utilisateurs devraient bientôt être déconnectés puis forcés de passer à la version WebView2
Autre contexte
- Ce changement coïncide avec le lancement de l’expérience native de WhatsApp sur Apple Watch
- L’Apple Watch compte 115 millions d’utilisateurs
- Windows dispose de plus d’un milliard d’appareils actifs, mais
Meta comme Microsoft semblent réduire le développement d’applications natives pour Windows
- L’article original évoque la possibilité que Meta ait choisi de maintenir une base de code web pour réduire les coûts,
sans toutefois donner de raison précise
1 commentaires
Avis Hacker News
Voir l’app que j’ai moi-même conçue et suivie évoluer comme ça me laisse un goût un peu amer
L’ancienne app native n’était pas parfaite, mais on sentait qu’elle essayait de respecter son environnement en tant qu’outil de productivité
Au final, je pense qu’une app desktop native est irréaliste pour une grande entreprise, à cause du coût de coordination
Dès qu’il faut lancer des fonctionnalités simultanément sur plusieurs plateformes, la complexité explose. Avec un rythme de développement tranquille, c’est possible, mais si on veut expérimenter vite et itérer rapidement, on finit forcément par conclure qu’il vaut mieux écrire une seule fois du code web
Même Microsoft développe comme ça aujourd’hui. Ironiquement, ce sont les petites entreprises qui arrivent le mieux à maintenir des apps natives
J’ai du mal à croire qu’une grande entreprise soit incapable de rendre nativement des bulles de texte et des émojis. Même MSN Messenger savait faire ça à l’époque
En mode waterfall, ça passe, mais avec le développement « Agile » d’aujourd’hui, c’est le chaos complet
Sur Android ou iOS, l’expérience native reste suffisamment importante pour que ça en vaille la peine, mais sur Windows, les API changent sans cesse et la sensation de natif a presque disparu
Ils auraient sans doute mieux fait de le faire en Qt comme Telegram
Au départ, une app native faite avec soin gagne en popularité, mais à mesure que l’entreprise grossit, ce sont les expérimentations, la télémétrie et l’itération rapide qui prennent le dessus
Grâce à leur position dominante, la qualité cesse d’être importante, et même si tout finit en grosse app Electron boursouflée, personne ne peut vraiment s’y opposer
La raison du remplacement est claire. Ils arrivaient à déployer rapidement de nouvelles fonctionnalités sur la version web, alors que le client natif peinait à suivre
Ils ont donc fini par passer à un wrapper web
De nos jours, la notion même d’« app Windows native » est devenue floue, et les performances comme le mode hors ligne peuvent largement être gérés par le web
Cela dit, voir le processus GPU monter à 400 Mo reste assez ridicule. Mais avec une entreprise comme Meta, c’est le genre de chose qu’on peut se permettre
Depuis que Meta a fait du client web son axe principal, ils semblent avoir unifié toutes les plateformes non mobiles autour du web
« Firefox n’est pas pris en charge. Je n’utilise pas Chrome. » était ma arme finale, mais maintenant je dois aussi sortir l’excuse de Safari. À cause de React
Article lié : Making News Feed Nearly 50% Faster on iOS
Du point de vue de la direction, développer les mêmes fonctionnalités sur plusieurs plateformes paraît être du gaspillage, donc on dérive vers un développement piloté par les chiffres
Ni les performances ni l’usage mémoire ne sont pris en compte, et l’idée que « les web apps sont déjà assez rapides » s’est largement répandue
Pour ma part, je trouvais l’ancienne app Windows native de WhatsApp vraiment horrible
La saisie se bloquait souvent, ou bien les caractères accentués se cassaient, au point qu’il fallait redémarrer. La nouvelle app Electron est lourde, mais au moins elle fonctionne correctement
Page officielle Microsoft WebView2
À une époque, on pouvait passer des appels audio et vidéo avec 128 Mo de RAM et un CPU monocœur, alors qu’aujourd’hui on dirait que l’efficacité a régressé
Les gains de performance de JS et du web ont surtout fini par permettre le déploiement de plus de pubs et de plus de code
Wiki sur le paradoxe de Jevons
Le fait que WhatsApp soit passé de wrapper web → natif → à nouveau web forme un cycle intéressant
On dit que le coût de maintenance du natif est élevé, mais je me demande si réécrire l’app tous les quelques ans n’est pas encore plus gaspilleur
Il y a trop de bugs et de fonctionnalités manquantes, alors que Chrome n’a pas ce genre de problèmes
Je voyage souvent, et j’aimerais pouvoir utiliser WhatsApp simultanément sur plusieurs téléphones
À chaque réinitialisation de mon téléphone de voyage, les sauvegardes et restaurations sont pénibles
Ça donne l’impression que l’agent de codage IA de Meta n’a même pas réussi à maintenir correctement une seule app native
Cette tendance au basculement vers le web va probablement continuer
Le New Outlook de Microsoft est lui aussi essentiellement un client web enveloppé dans un EXE
Résultat, des fonctionnalités essentielles comme les COM Add-in, VBA, MAPI ou la prise en charge des .PST ont disparu
Cette évolution est peut-être au fond le signe de l’effondrement de la civilisation
Article lié : Collapse of Civilization
Flutter aurait peut-être pu constituer un bon compromis
Cela aurait permis de créer efficacement une app desktop multiplateforme tout en consommant bien moins de ressources
En réalité, il est possible que ce ne soit pas une forte consommation mémoire, mais simplement que V8 réserve de la mémoire
Sous Windows, les réservations se font par blocs de 256 Mo, donc avec plusieurs processus, on peut avoir l’impression que ça monte jusqu’à 1 Go
Ce qu’on voit dans le gestionnaire des tâches n’est pas la consommation réelle, mais la mémoire réservée de Chromium
Ce n’est pas tant la faute de WhatsApp qu’un problème structurel de Chromium
Ils savaient qu’Electron consommait beaucoup de mémoire, et ils l’ont quand même choisi
Quand on compare avec l’ancien WhatsApp sur iOS ou la version Windows de 2018, il n’y a pratiquement aucune différence fonctionnelle, donc on peut se demander s’il y avait vraiment une raison de tout refaire