Saltare al contenuto

@capgo/capacitor-cache-assegni

Caching media pesanti CDN nel storage persistente di proprietà dell'applicazione e lega immagini o video a URL locali di visualizzazione web.

Visualizzazione solo locale delle fonti

src, resolve, e bind ritorna una risorsa di origine solo dopo l'esistenza di un file locale. La tua etichetta img o video riceve un URL di visualizzazione web locale.

Persistente archiviazione nativa

Gli asset memorizzati vivono nella memoria persistente di proprietà dell'applicazione, non nella cartella di cache del sistema che il sistema può espellere sotto pressione.

Sostegno CDN protetto

Passa i header al fetch nativo per gli asset firmati o autenticati mentre l'elemento web carica solo il file locale.

Legame amichevole per il framework

Lega la risoluzione della cache nativa a HTML puro, riferimenti React, riferimenti Vue o a qualsiasi framework che possa assegnare una src per img o video.

@capgo/capacitor-asset-cache memorizza grandi immagini, video e altri asset CDN nella memoria persistente di proprietà dell'applicazione, quindi fornisce all'app web una URL di origine locale per la visualizzazione.

La normale via è:

  1. Configura un URL base CDN una volta sola, o passa un URL assoluto per asset.
  2. Chiama AssetCache.bind(element, path) o AssetCache.src(path).
  3. O plugin recupera o riconvalida nativamente l'asset remoto.
  4. L'elemento riceve un URL di visualizzazione web locale solo dopo che il file locale è pronto.

Utilizza il cache degli asset quando il tuo app visualizza media remoto pesanti che dovrebbero sopravvivere alla pressione di archiviazione normale:

  • video di onboarding o di marketing serviti da un CDN
  • immagini eroine, gallerie o sequenze di immagini reutilizzate all'interno di sessioni
  • media protetti che richiedono intestazioni di richiesta
  • schermate tolleranti all'offline dove un asset locale precedentemente recuperato è sufficiente
  • Capacitor app dove <img> e <video> non dovrebbero essere recuperate direttamente le URL protette
  • configure(options) imposta il comportamento predefinito del CDN e della riconvalida.
  • bind(element, path, options?) aggiorna un elemento di immagine o video quando il file locale è pronto.
  • src(path, options?) ritorna una stringa di origine locale per lo stato del framework.
  • resolve(path, options?) ritorna la fonte locale più i metadati della cache.
  • get(options) risolve una URL remota in metadati di file nativi persistenti.
  • remove(options) rimuove un asset di cache per chiave o URL.
  • clear() rimuove ogni asset di cache gestito dal plugin.
  • list() ritorna gli asset di cache che ancora esistono su disco.
  • getCacheSize() ritorna i byte totali di cache.
  • getPluginVersion() ritorna il marker di versione dell'implementazione nativa.

La cache può essere controllata in modi diversi per ogni asset o attraverso impostazioni predefinite:

SchemaComportamento
neverUsa il file locale quando presente.
ttlRiscarica dopo maxAgeSeconds.
alwaysRivaluta ogni volta e invia validatori noti.
etagUsa il noto validator ETag HTTP quando presente.
last-modifiedUsa il noto validator Last-Modified HTTP quando presente.

Sui dispositivi iOS, i file sono archiviati sotto Application Support e la radice del cache è esclusa dal backup iCloud. Sui dispositivi Android, i file sono archiviati sotto la directory dei file interni dell'app.

Il cache è nascosto all'interno del sandbox dell'app e non è visibile come media pubblica. Viene rimosso quando l'app viene disinstallata, quando l'utente cancella i dati dell'app o quando il tuo app chiama clear() o remove().

Se stai utilizzando @capgo/capacitor-cache di asset per pianificare il caricamento persistente dei media, connettilo con Avvio rapido per i dettagli di implementazione, @capgo/capacitor-downloader per scarichi di background espliciti, @capgo/capacitor-file per l'accesso generale ai file locali, e Utilizzare @capgo/capacitor-cache di asset per il tutorial.