Publié le 21 janvier 2026
À partir de Chrome 144, le processus de mise à jour des applications Web installables qui possèdent un fichier manifeste d'application Web a été simplifié, ce qui le rend plus déterministe, prévisible et efficace. Cet article explique l'approche actuelle et les modifications que nous avons apportées pour l'améliorer.
Ancienne approche (avant Chrome 144)
Avant Chrome 144, les applications Web ne disposaient pas d'événement spécifique pour déclencher les mises à jour de manière proactive. Les mises à jour peuvent avoir lieu lorsque les développeurs modifient le fichier manifeste de l'application ou ses icônes associées. Le processus de mise à jour commence lorsqu'un agent utilisateur récupère un manifeste à l'aide d'un lien de manifeste, ce qui se produit généralement lorsqu'un utilisateur visite un site ou lance une application (avec ce manifeste associé). Pour déterminer si une mise à jour est requise, le système compare le fichier manifeste et les icônes actuels à l'état enregistré précédemment. Cette procédure était gourmande en ressources, car elle nécessitait toujours le téléchargement d'icônes à partir du réseau pour effectuer une comparaison bitmap.
Pour atténuer la charge du serveur liée aux téléchargements d'icônes, Chrome a mis en place une limitation pour limiter ces vérifications à une fois par jour et par application, mais la consommation totale de bande passante est restée élevée. De plus, limiter les vérifications à une fois par jour entraîne des incohérences lors du développement et des tests, tout en empêchant les développeurs de fournir des solutions fiables aux utilisateurs qui n'ont pas reçu de mises à jour.
Avec cette approche, les développeurs devaient faire face à des complexités lors de l'implémentation de modifications sensibles en termes de sécurité, telles que les modifications du nom ou de l'icône d'une application, souvent appelées modifications de l'identité de l'application. Étant donné que les applications Web ne disposent pas d'une autorité centrale comme Google Play pour examiner les mises à jour, ces modifications doivent être présentées clairement aux utilisateurs pour confirmation. Déterminer le moment le plus approprié pour inviter les utilisateurs à effectuer ces modifications restait toutefois un défi.
Les itérations précédentes de la boîte de dialogue de mise à jour ont également souvent semé la confusion en affirmant que les icônes avaient changé alors qu'elles étaient visuellement identiques pour l'utilisateur. Ce problème était dû à l'utilisation de comparaisons directes de pixels, qui signalaient souvent des différences négligeables. Si certaines variations résultaient de modifications intentionnelles apportées par les développeurs, beaucoup étaient dues à la réencodage dynamique des images par les CDN. Ce déclenchement fréquent et excessif de la boîte de dialogue de confirmation a finalement conduit à la désactivation des mises à jour d'icônes dans Chrome 91.
Pour résoudre ce problème sur Chrome pour Android, un seuil de différence visuelle a été introduit il y a plusieurs années. Cela permet de s'assurer que la confirmation de l'utilisateur n'est demandée que si les modifications apportées aux icônes sont importantes. Ce perfectionnement a permis de rétablir la mise à jour des icônes sur Android, bien que la fonctionnalité soit restée désactivée pour Chrome sur ordinateur.
Contraintes et objectifs pour les modifications apportées aux mises à jour des applications Web
Les objectifs suivants ont guidé le développement du nouveau processus de mise à jour :
- Respectez les attentes des utilisateurs : l'identité d'une application étant intrinsèquement liée à son origine, son nom et son icône ne doivent pas être modifiés sans l'approbation explicite de l'utilisateur.
- Assurez-vous que les fonctionnalités sont cohérentes : les applications doivent rester à jour pour tous les utilisateurs afin de garantir la cohérence des fonctionnalités.
- Fournir une UX et des boîtes de dialogue prévisibles : les développeurs doivent pouvoir anticiper facilement le moment où les utilisateurs rencontreront des invites d'interface concernant les modifications apportées aux noms ou aux icônes des applications.
- Optimiser l'utilisation du réseau : le mécanisme de mise à jour doit minimiser le trafic de données inutile.
Qu'est-ce qui a changé dans Chrome 144 ?
Les modifications du nom et de l'icône sont désormais facultatives
Auparavant, les utilisateurs étaient confrontés à une boîte de dialogue intrusive qui les obligeait à désinstaller l'application ou à accepter immédiatement les modifications apportées à l'icône et au nom. Cette option a été remplacée par une suggestion plus conviviale accessible depuis un menu à trois points développé. Lorsqu'ils sont sélectionnés, les utilisateurs ont désormais la possibilité d'ignorer complètement ces modifications d'identité s'ils le préfèrent.
Bien que la plupart des mises à jour du fichier manifeste soient appliquées immédiatement, les icônes et les noms d'application, considérés comme des membres sensibles à la sécurité, sont stockés séparément. Les utilisateurs peuvent ainsi examiner et appliquer ces modifications spécifiques à leur convenance.

Cliquez sur Examiner la mise à jour de l'application pour afficher la boîte de dialogue modifiée. Le titre change en fonction des éléments en cours de mise à jour.

Les icônes ne sont pas téléchargées si le champ "icônes" n'a pas été modifié.
Les icônes sont désormais considérées comme inchangées si le champ icons du fichier manifeste reste identique à celui de la dernière version appliquée. Avec cette nouvelle logique, Chrome évite de télécharger des icônes pour la comparaison visuelle, en traitant effectivement les URL d'icônes comme Cache-Control:immutable.
Pour déclencher une mise à jour de l'icône, les développeurs doivent désormais modifier les métadonnées ou l'URL de l'icône.
Suppression de la limitation des mises à jour
Comme Chrome ne télécharge plus les icônes chaque fois qu'il rencontre un fichier manifeste pour une application installée, l'ancienne restriction, qui limitait les vérifications de mise à jour à une fois par jour, a été supprimée. Les développeurs peuvent désormais compter sur le fait que la mise à jour se produira immédiatement pour tous les membres non sensibles à la sécurité.
Gérer les variations mineures d'icônes sur les plates-formes
Pour améliorer l'expérience utilisateur, Chrome applique désormais automatiquement les mises à jour d'icônes qui présentent une différence de moins de 10 % lors d'une comparaison pixel par pixel. Cela permet de s'assurer que les variations mineures, telles que celles causées par le réencodage du CDN, ne déclenchent pas de boîte de dialogue de mise à jour déroutante pour l'utilisateur.
Cette autorisation est limitée à une fois par jour pour éviter tout abus potentiel. Si d'autres modifications ont lieu pendant cette période, l'icône est traitée comme une mise à jour standard et l'utilisateur est invité à confirmer la modification.
Exemple de modification d'icône et de nom
{
"name": "Example App",
"short_name": "App",
"id": "https://www.example-app.com/",
"start_url": "https://www.example-app.com/index.html",
"scope": "https://www.example-app.com/",
"icons": [
{
"src": "https://www.example-app.com/img/app.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
}
],
... other attributes omitted ...
}
Si vous modifiez l'URL de l'icône, l'utilisateur verra à coup sûr une boîte de dialogue de mise à jour pour changer l'icône.
{
"name": "Example App",
"short_name": "App",
"id": "https://www.example-app.com/",
"start_url": "https://www.example-app.com/index.html",
"scope": "https://www.example-app.com/",
"icons": [
{
"src": "https://www.example-app.com/img/app-NEW-URL.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
}
],
... other attributes omitted ...
}