109 votes

Quand et comment une PWA se met-elle à jour?

Autant que je sache, une fois que vous cliquez sur "ajouter à l'écran d'accueil" à la PWA, du site web, le navigateur génère un .apk en utilisant le fichier de manifeste et les sources et l'installe comme un normal de l'application.

J'ai remarqué que lorsque je mets à jour le site web, l'application affiche également le contenu mis à jour ce qui suggère que l'application est juste un wrapper pour accéder au site. J'ai aussi remarqué que la mise à jour d'un site web ne s'affiche pas instantanément, je suppose que c'est en raison de la mise en cache.

Ma question est, sont mes hypothèses correctes? Ou, plus généralement, quand et comment sont PWAs updatated et est-il un moyen de forcer une mise à jour sur un ordinateur client?

70voto

Anand Points 3108

Pas de cache scénario (Pas de Service d'un travailleur: Vous PWA application va être mis en cache uniquement lorsque vous utilisez le Service de travailleur. Le manifeste.json permettra l'ajout de votre application web à l'écran d'accueil avec une icône et sans ouvrir la barre d'adresse. Si vous n'avez pas de travail ou si votre navigateur ne le supporte pas, la page web sera chargé frais à chaque fois. Pas De Cache.

Cache-le Scénario (Avec travail de Service): en Supposant que vous avez des travailleurs de services configurés, les travailleurs des services peut mettre en cache par le chargement paresseux ou le pré-chargement de fichiers qui sont configurés pour mettre en cache (Vous pouvez inclure ou exclure de la mise en cache rien de l'html, du CSS, les images en JSON/XML API réponses).

Après la première cache, travailleur des services d'utiliser le cache de servir vos applications réseau demande fondée sur le cache de l'approche que vous avez mis en œuvre à partir de ci-dessous ceux.

  • cache retomber réseau
  • Réseau retomber cache
  • Cache réseau

La plupart des applications choisir préalablement mis en cache en raison des avantages de performance et de rechercher de nouveaux fichiers sur le chargement, si des changements seront chargés sur la session suivante ou de demander à l'utilisateur d'actualiser. Avec cette solution, chaque fichier possède une longue chaîne de Hachage pour chaque fichier mis en cache par le travailleur des services. Sur la charge de chaque application, le code de hachage de serveur seront extraites de match et trouver ce fichier doit être mis à jour et le même sera mis à jour dans un service distinct thread de travail. Vous pouvez l'observer dans l'onglet réseau -> agent du service de réponse en chrome developer tools.

Si vous choisissez le réseau poing approche, vous pouvez éviter de montrer de l'ancien contenu de chargement initial, mais lâche significative de la performance des prestations qui vient avec la mise en cache.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X