Aller directement au contenu

@capgo/capacitor-cache d'actifs

Cachez les médias de CDN lourds dans le stockage de stockage persistant de l'application et liez les images ou les vidéos à des URL de vue web locale.

Affichage de sources uniquement local

src, resolve, et bind renvoie une source uniquement après l'existence d'un fichier local. Votre balise img ou vidéo reçoit une URL de vue web locale.

Stockage de données natif persistant

Les actifs en cache vivent dans un stockage de données persistant appartenant à l'application, et non dans le dossier de cache de la plateforme que le système peut évacuer sous pression.

Support CDN protégé

Transmettre des en-têtes à la requête native pour les actifs signés ou authentifiés tout en chargeant uniquement le fichier local.

Liaison amicale avec les frameworks

Lier la résolution de cache natif à du HTML plat, des références React, des références Vue ou tout framework pouvant attribuer une source img ou vidéo.

@capgo/capacitor-asset-cache cache de grandes images, vidéos et autres actifs CDN dans un stockage de données persistant appartenant à l'application, puis donne à l'application web une URL de source locale pour la mise en page.

La voie normale est :

  1. Configurer une URL de base CDN une fois, ou passer une URL absolue par actif.
  2. Appeler AssetCache.bind(element, path) ou AssetCache.src(path).
  3. Le plugin récupère ou révérifie les actifs distants de manière native.
  4. L'élément reçoit une URL de vue web locale uniquement après que le fichier local soit prêt.

Quand l'utiliser

Quand l'utiliser

Utilisez la mise en cache d'actifs lorsque votre application affiche des médias distants lourds qui doivent survivre à la pression de stockage normale :

  • vidéos de démarrage ou de marketing servies à partir d'un CDN
  • images d'héros, galeries ou séquences d'images réutilisées au cours de sessions
  • médias protégés qui nécessitent des en-têtes de requête
  • écrans tolérants à l'offline où un actif local précédemment téléchargé est suffisant
  • applications Capacitor où <img> et <video> ne doit pas charger directement les URL protégées
  • configure(options) configure les comportements par défaut du CDN et de la révalidation.
  • bind(element, path, options?) met à jour un élément d'image ou de vidéo lorsque le fichier local est prêt.
  • src(path, options?) renvoie une chaîne de source locale pour l'état du framework.
  • resolve(path, options?) renvoie la source locale plus les métadonnées de cache.
  • get(options) résout une URL distante en métadonnées de fichier natif persistant.
  • remove(options) supprime un asset caché par clé ou URL.
  • clear() supprime tous les assets cachés gérés par le plugin.
  • list() renvoie les assets cachés qui existent toujours sur le disque.
  • getCacheSize() renvoie les octets de cache totaux.
  • getPluginVersion() renvoie le marqueur de version de l'implémentation native.

Le cache peut être vérifié de différentes manières par asset ou par défauts :

StratégieComportement
neverUtilisez le fichier local lorsque celui-ci est présent.
ttlRe-téléchargez après maxAgeSeconds.
alwaysVérifiez à chaque appel et envoyez les validateurs connus.
etagUtilisez le validateur ETag HTTP connu lorsque celui-ci est présent.
last-modifiedUtilisez le validateur Last-Modified HTTP connu lorsque celui-ci est présent.

Sur iOS, les fichiers sont stockés sous Application Support et la racine de la cache est exclue de la sauvegarde iCloud. Sur Android, les fichiers sont stockés sous le répertoire de fichiers internes de l'application.

La cache est cachée à l'intérieur du sandbox de l'application et n'est pas visible comme média utilisateur public. Elle est supprimée lorsque l'application est désinstallée, lorsque l'utilisateur efface les données de l'application ou lorsque votre application appelle clear() ou remove().

Si vous utilisez @capgo/capacitor-cache-d'actifs pour planifier le chargement persistant des médias, connectez-l’avec Prise en main pour les détails d'implémentation ; @capgo/capacitor-téléchargement pour les téléchargements de fond explicites ; @capgo/capacitor-fichier pour l'accès général aux fichiers locaux, et Utilisation de @capgo/capacitor-cache-d'actifs pour le tutoriel.