Nur lokale Anzeigequellen
src, resolve, und bind Liefert eine Quelle erst zurück, wenn eine lokale Datei existiert. Dein img- oder video-Tag erhält eine lokale WebView-URL.
Nur lokale Anzeigequellen
src, resolve, und bind Liefert eine Quelle erst zurück, wenn eine lokale Datei existiert. Dein img- oder video-Tag erhält eine lokale WebView-URL.
Persistenter nativer Speicher
Gecachte Assets liegen im app-eigenen persistenten Speicher, nicht im Plattform-Cache-Ordner, den das System bei Platzmangel löschen könnte.
Unterstützung für geschützte CDNs
Übergib Header an den nativen Fetch für signierte oder authentifizierte Assets, während das Web-Element weiterhin nur die lokale Datei lädt.
Framework-freundliche Bindung
Binde die native Cache-Auflösung an einfaches HTML, React refs, Vue refs oder jedes Framework, das ein img- oder video-src zuweisen kann.
Cache CDN-Bilder und -Videos im persistenten App-Speicher und binde sie als lokale Medienquellen ein
Starte mit cancel() und den anderen unten aufgeführten Core-Methoden.
| Plattform | Support | Notizen |
|---|---|---|
| iOS | Ja | Native |
| Android | Ja | Native |
| Web | Nein | Absichern mit Capacitor.getPlatform() |
Nutzen Sie Asset Cache, wenn Ihre App schweres Remote-Medienmaterial anzeigt, das normalen Speicherdruck überstehen soll:
<img> und <video> geschützte URLs nicht direkt abgerufen werden sollenconfigure(options) Legt das Standard-CDN und das Revalidierungsverhalten fest.bind(element, path, options?) Aktualisiert ein Bild- oder Videoelement, wenn die lokale Datei bereit ist.src(path, options?) Gibt eine lokale Quellzeichenkette für den Framework-Zustand zurück.resolve(path, options?) Gibt die lokale Quelle plus Cache-Metadaten zurück.get(options) Löst eine Remote-URL in persistente native Dateimetadaten auf.remove(options) Entfernt ein einzelnes gecachtes Asset per Key oder URL.clear() Entfernt alle vom Plugin verwalteten gecachten Assets.list() returns cached assets that still exist on disk.getCacheSize() gibt die insgesamt gecachten Bytes zurück.getPluginVersion() gibt den Versionsmarker der nativen Implementierung zurück.Der Cache kann pro Asset oder über Standardwerte unterschiedlich geprüft werden:
| Strategie | Verhalten |
|---|---|
never | Verwende die lokale Datei, falls vorhanden. |
ttl | Erneut herunterladen nach maxAgeSeconds. |
always | Bei jedem Aufruf revalidieren und bekannte Validatoren senden. |
etag | Verwende den bekannten HTTP-ETag-Validator, falls vorhanden. |
last-modified | Verwende den bekannten HTTP-Last-Modified-Validator, falls vorhanden. |
Unter iOS werden Dateien in Application Support gespeichert, wobei der Cache-Root vom iCloud-Backup ausgeschlossen ist. Unter Android werden die Dateien im internen Dateiverzeichnis der App gespeichert.
Der Cache ist in der App-Sandbox verborgen und nicht als öffentliche Benutzermedien sichtbar. Er wird entfernt, wenn die App deinstalliert wird, wenn der Nutzer die App-Daten löscht oder wenn deine App aufruft clear() oder remove().
Wenn du es nutzt @capgo/capacitor-asset-cache um persistentes Laden von Medien zu planen, verbinde es mit Erste Schritte für Implementierungsdetails, @capgo/capacitor-downloader für explizite Background-Downloads, @capgo/capacitor-file für den allgemeinen lokalen Dateizugriff und @capgo/capacitor-asset-cache verwenden für das Tutorial.