Я использую плагин chrisben imgcache. js для кэширования изображений,
После перехода на WKWebview этот плагин перестал работать на меня. Я перешел на v2.1.1, которая отлично работает на Android. Я использую Cordova со следующими плагинами
cordova-plugin-wkwebview-engine: 1.2.1 cordova-plugin-wkwebview-file-xhr: 2.1.4
Следующее замечание из консоль указывает, что файл загружен / сохранен правильно, но при извлечении он завершается неудачей.
> [Log] INFO: Download complete:
> file:///Users/shadow4768/Library/Developer/CoreSimulator/Devices/3965C47C-7718-48C3-82ED-DF9A2CCB3989/data/Containers/Data/Application/3BFC0F90-F7D4-4DFA-8648-0F440929F835/Library/NoCloud/imgcache/5b1950b1ee383f3fdd0e51bf84dfdbd505006d79
> (cordova.js, line 1540) [Log] INFO: Cached file size: 37161
> (cordova.js, line 1540) [Log] INFO: current size: 2533404 (cordova.js,
> line 1540) [Log] INFO: com.apple.MobileBackup metadata set
> (cordova.js, line 1540) [Log] INFO: File
> getdocument?documentid=41623&width=300 loaded from cache (cordova.js,
> line 1540) [Error] Failed to load resource: unsupported URL
> cdvfile://localhost/library-nosync/imgcache/91c59e590d88a60c252d8281aa165be35a7d5798
Единственные решения, которые я нашел, связаны с Ioni c,
Сначала я думал, что ниже код был исправлением, чтобы понять, что он может быть несовместим с тем, что я использую, так как теперь работают только некоторые функции.
ImgCache.getCachedFileURL(src,
(originalUrl, cacheUrl) => {
const file = new File();
const cacheFileUrl = cacheUrl.replace('cdvfile://localhost/persistent/', file.documentsDirectory);
const localServerFileUrl = cacheFileUrl.replace('file://', 'http://localhost:8080');
//localServerFileUrl contains the loadable url
resolve(localServerFileUrl);
},
(e) => {
console.error('img-cache-error:', e);
reject(e)
});
Любые идеи о том, как я могу обойти эту проблему, будут очень оценили.