如何使用PhoneGap / Cordova本地缓存图像文件?
How can I cache image files locally with PhoneGap / Cordova?
我的问题是:
我正在制作一个Web/Mobile应用,使用AngularJS和Cordova。对于离线目的,我使用localStorage来存储应用程序的所有数据(JSON,参数等)。
问题是:我需要在本地存储/缓存图像(再次,离线目的)。由于localStorage大小限制在5mo左右,我无法使用它,我需要更多的。
我以为我可以使用缓存清单,但它不起作用,因为我需要定期更新它,而不需要重新编译应用程序(我以为我可以把缓存清单放在外部服务器上,但就像我不能使用来自另一个域的缓存清单)。
所以我正在考虑使用Cordova/Phonegap文件API,但是我不知道如何实现…
在SO和Github上长时间搜索后,我发现了imgCache.js,一个处理Chrome, Android和iOs(通过Cordova)的文件缓存的JS库。
https://github.com/chrisben/imgcache.js/然后,基本上:
var target = $('.cached-img');
ImgCache.isCached(target.attr('src'), function(path, success){
if(success){
// already cached
ImgCache.useCachedFile(target);
} else {
// not there, need to cache the image
ImgCache.cacheFile(target.attr('src'), function(){
ImgCache.useCachedFile(target);
});
}
});
通过Cordova File插件使用HTML5文件系统。在Cordova文件文档中应该可以找到FileEntry->File。然后,该文件应该可以通过HTML 5文件系统方法使用。https://github.com/apache/cordova-plugin-file
相关文章:
- 使用脚本缓存图像
- 预加载图像和缓存图像之间有区别吗
- Chrome 不会在 SVG 中缓存图像
- 无法从画布缓存图像数据
- 如何在Javascript中缓存图像
- jQuery Datatable缓存图像问题
- 允许在页面上缓存,但请确保不缓存图像
- 强制浏览器仅缓存图像(而不是脚本和链接)
- 缓存图像&本地phonegap的数据
- 用javascript创建两次缓存图像
- 使用没有插件的angularjs缓存图像
- 使用Javascript加载和缓存图像,并了解HTTP状态码
- 如何使用Angularjs ionic缓存图像
- 在浏览器中缓存图像后,通过请求图像来检查互联网连接不起作用
- FileContentResult -防止浏览器缓存图像
- 使用骨干模型缓存图像
- 如何使用PhoneGap / Cordova本地缓存图像文件?
- 如何启用akamai缓存图像,css, js等
- Chrome/Firefox缓存图像问题
- Dropbox提供的浏览器缓存图像