Cordova/Phonegap/Ionic App - 远程图像的本地存储

Sim*_*mon 13 android json ios angularjs cordova

我正在使用Ionic/AngularJS构建应用程序,并在应用程序启动时下拉远程数据(JSON).

例如:

[{"id":1,"name":"Retriever","image":"http://server.com/images/image1.jpg"},
{"id":2,"name":"Collie","image":"http://server.com/images/image2.jpg"},
{"id":3,"name":"Poodle","image":"http://server.com/images/image3.jpg"}]
Run Code Online (Sandbox Code Playgroud)

这个数据有很多图片 -

在设备上本地存储这些文件的方法是什么(并更新JSON中的文件路径,因为它用于过滤视图上的显示数据),允许离线查看?

Ego*_*nov 12

解决方案1

使用来自ngCordova的$ cordovaFile服务 - http://ngcordova.com/docs/(看起来你需要这个服务的downloadFile方法)

解决方案2

使用此Cordova插件 - https://github.com/apache/cordova-plugin-file/blob/master/doc/index.md(此插件实现了一个文件API,允许对驻留在设备上的文件进行读/写访问.)

本质上,解决方案1只是此File API的Angular包装器.

解决方案3

将图像存储在本地存储中,但由于您的大小限制为5 Mb,因此图像非常有限.将图像存储在这样的存储器中通常是个坏主意.

解决方案4

使用WebSQL替代本地存储.


我个人会选择解决方案1.