Vai alla sezione principale
Indietro ai plugin
@capgo/capacitor-cache-asset
Tutorial
@capgo/capacitor-cache-asset

Cache degli asset

Cache immagini e video CDN e lega loro come fonti di media locali

Guida

Tutorial sul Cache degli Asset

Utilizza @capgo/capacitor-asset-cache

@capgo/capacitor-asset-cache memorizza grandi immagini e video CDN nel storage persistente di app proprietario, quindi restituisce URL di origine locale per Capacitor webview.

Installa

npm install @capgo/capacitor-asset-cache
npx cap sync

Cosa questo plugin espone

  • bind - Collega un elemento di immagine o video a una fonte di asset locale e aggiornalo quando pronto.
  • src - Restituisci una stringa di origine locale dopo che l'asset esiste localmente.
  • resolve - Restituisci la fonte locale più i metadati della cache.
  • configure - Imposta il comportamento di default per la revalidazione e il CDN.
  • get, list, remove, clear, e getCacheSize - Gestisci la cache esplicitamente quando necessario.

Esempio di utilizzo

Configura un CDN una volta, poi lega gli elementi con percorsi relativi:

import { AssetCache } from '@capgo/capacitor-asset-cache';

AssetCache.configure({
  cdnUrl: 'https://cdn.example.com/assets/',
  revalidate: {
    strategy: 'ttl',
    maxAgeSeconds: 86400,
  },
});

const hero = document.querySelector<HTMLImageElement>('#hero');

if (hero) {
  AssetCache.bind(hero, 'images/hero.jpg');
}

L'elemento riceve data-asset-cache-state="loading" mentre il fetch nativo si esegue, poi riceve l'URL della fonte locale e si sposta a ready.

img[data-asset-cache-state='loading'],
video[data-asset-cache-state='loading'] {
  opacity: 0.45;
}

Asset Protetti

I header vengono inviati dal plugin mentre si effettua il fetch o la revalidazione del file remoto. L'elemento web riceve comunque solo l'URL della fonte locale.

const src = await AssetCache.src('private/videos/intro.mp4', {
  cdnUrl: 'https://cdn.example.com/assets/',
  headers: {
    Authorization: `Bearer ${token}`,
  },
});

Senza un URL di base per il CDN

Passa un URL assoluto quando non vuoi configurare cdnUrl.

const src = await AssetCache.src('https://cdn.example.com/assets/videos/intro.mp4');

Le percorrenze relative richiedono o una configurazione o una chiamata per- cdnUrl o una chiamata per- cdnUrl.

Nota sullo Storage

Su iOS, i file vivono sotto Application Support e sono esclusi dal backup iCloud. Su Android, i file vivono sotto il directory dei file interni dell'app. Il sistema non tratta questi file come file di cache disegnabili, ma l'eliminazione dell'app, la pulizia dei dati dell'app, clear(), e remove() ancora li elimina.

Riferimento completo

Continua da Utilizzo di @capgo/capacitor-cache-asset

Se stai utilizzando Usando @capgo/capacitor-cache-asset per pianificare il caricamento dei media persistente, connettilo con @capgo/capacitor-asset-cache Iniziare per i dettagli di implementazione, per i download di background espliciti, e @capgo/capacitor-downloader Barra inferiore @capgo/capacitor-file per i dettagli di implementazione,