Zum Inhalt springen

@capgo/capacitor-Asset-Cache

Cache schwere CDN-Medien in der app-eigenen persistenten Speicherung und binden Bilder oder Videos an lokale Webview-URLs.

lokale Anzeigequellen

src, resolve, und bind eine Quelle nur nachdem eine lokale Datei existiert. Ihr Bild- oder Videotag erhält eine lokale Webview-URL.

Persistente native Speicherung

Gespeicherte Assets leben in der app-eigenen persistente Speicherung, nicht im Plattform-Cache-Ordner, der das System unter Druck evakuieren kann.

Geschützter CDN-Unterstützung

Übertragen Sie Kopfzeilen an die native Fetch für signierte oder authentifizierte Assets, während das Web-Element nur die lokale Datei lädt.

Frameworkfreundliche Bindung

Bindet die native Cacheauflösung an einfaches HTML, React-Referenzen, Vue-Referenzen oder an jede Framework, das eine img- oder video-Quelle zuweisen kann.

@capgo/capacitor-asset-cache Lagert große Bilder, Videos und andere CDN-Assets in der app-eigenen persistenten Speicherung und gibt der Webanwendung eine lokale Quellen-URL für die Anzeige.

Der normale Weg ist:

  1. Konfigurieren Sie einmalig eine CDN-Base-URL oder übergeben Sie eine absolute URL pro Asset.
  2. Aufrufen AssetCache.bind(element, path) oder AssetCache.src(path).
  3. Die Plugin lädt oder überprüft die remote Asset natively.
  4. Der Element erhält eine lokale WebView-URL nur, nachdem das lokale Datei bereit ist.

Verwenden Sie den Asset Cache, wenn Ihre App schwerwiegende remote-Medien anzeigt, die normalen Speicherdruck überleben sollten:

  • onboarding or marketing videos served from a CDN
  • Heldenbilder, Galerien oder Bildsequenzen, die über Sitzungen hinweg wiederholt werden
  • Geschützte Medien, die Anforderungsheaders erfordern
  • Offline-tolerante Bildschirme, bei denen ein zuvor abgerufenes lokales Asset ausreicht
  • Capacitor Apps, bei denen <img> und <video> Directly sollten Sie keine geschützten URLs aufrufen
  • configure(options) Legt Standard-CDN und -Revalidierungsverhalten fest.
  • bind(element, path, options?) aktualisiert ein Bild- oder Videoelement, wenn das lokale Datei bereit ist.
  • src(path, options?) Rückgabetyp: Eine lokale Quellzeichenfolge für Framework-Zustand.
  • resolve(path, options?) Rückgabetyp: Die lokale Quellzeichenfolge plus Cache-Metadaten.
  • get(options) Rückgabetyp: Persistente native Dateimetadata für eine Remote-URL.
  • remove(options) entfernt einen gecacherten Asset durch Schlüssel oder URL.
  • clear() Entfernt alle von dem Plugin verwalteten gecachten Assets.
  • list() Rückgabewert der im Dateisystem noch vorhandenen cached Assets.
  • getCacheSize() Rückgabewert der gesamten cached Bytes.
  • getPluginVersion() Rückgabewert der Versionsmarker der native Implementierung.

Die Cache-Kontrolle kann auf verschiedene Weise pro Asset oder durch Standards erfolgen:

StrategieVerhalten
neverWenn ein lokales Datei vorhanden ist, wird sie verwendet.
ttlWiederherunterladen nach maxAgeSeconds.
alwaysBei jedem Aufruf revalidieren und bekannte Validator senden.
etagUse the known HTTP ETag validator when present.
last-modifiedVerwenden Sie den bekannten HTTP-Last-Modified-Validator, wenn dieser vorhanden ist.

Auf iOS werden Dateien unter Application Support gespeichert und der Cache-Root wird aus dem iCloud-Backup ausgeschlossen. Auf Android werden Dateien unter dem internen Dateispeicher des Apps gespeichert.

Der Cache ist innerhalb des App-Sandbox versteckt und ist als öffentliches Benutzermedium nicht sichtbar. Er wird entfernt, wenn die App uninstalliert wird, wenn der Benutzer die App-Daten löscht oder wenn Ihre App clear() oder remove().

Weiter von @capgo/capacitor-Asset-Cache

Weitergehen von @capgo/capacitor-asset-cache

Abschnitt mit dem Titel "Weitergehen von @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-asset-cache" @capgo/capacitor-Asset-Cache um persistente Medienbelastung zu planen, verbinden Sie es mit um ihn mit dem Für Implementierungsdetails @capgo/capacitor-Herunterladegerät Für explizite Hintergrundherunterläufe @capgo/capacitor-Datei Für allgemeinen Zugriff auf lokale Dateien und Mit @capgo/capacitor-Asset-Cache Für das Tutorial.