要为PhoneGap应用程序存储什么数据类型?

时间:2014-02-18 02:33:28

标签: javascript json cordova

我目前正在开发一个包含特定于不同地理位置的信息的应用程序。我正在使用PhoneGap的Ionic框架。

目前我拥有它,因此每个区域的所有信息都存储在JSON文件中。每次页面调用都会检索信息,并动态放置以供用户阅读。我选择JSON文件是因为它们不难管理,我需要能够允许用户下载区域以供离线使用。 JSON是否可以成为这种类型的数据存储的好方法?我听说过板载数据库内存,但我不确定使用这种内存的任何文档或优缺点。

任何建议都将不胜感激!

3 个答案:

答案 0 :(得分:4)

使用ionic / Cordova存储数据的方法有很多种。虽然您拥有的JSON方式可以完成这项工作,但您可能会在以后遇到内存/可伸缩性问题。 这里有几个选项

1)内置支持离子 -

window.localStorage['projects'];

http://ionicframework.com/docs/guide/building.html

2)Pouchdb- Apache的Couch数据库的可移植版本。这里最好的是,它允许您来回同步数据到远程数据库。

http://pouchdb.com/

3)Mozilla LocalForage:通过为您抽象存储方法来处理后端。专门为离线存储构建https://github.com/mozilla/localForage

使用这些的优点是

  • 他们以JSON格式存储文档
  • 有些像
  • 这样的REST API
  • 连接和写入的接口您可以对它们运行查询
  • 他们在网址加载期间加载一次。

答案 1 :(得分:1)

由于在PhoneGap中使用javascript编码,JSON是存储数据的方式,因为它易于在javascript中处理,为什么会使事情变得复杂。

在PhoneGap中,我喜欢使用FileAPI,因此我会在本地存储JSON文件,并在需要时加载它们。本地存储(键/值对)限制为5MB,而FileAPI不受任何限制,只要您有足够的空间可以使用File API存储它,请查看PhoneGap文档。

答案 2 :(得分:0)

我认为你可以做到最好的是使用cordova存储支持https://cordova.apache.org/docs/en/3.0.0/cordova_storage_storage.md.html

ngCordova虽然它也得到了支持,但尚未记录,但我找到了一个如何使用它的很好的例子https://gist.github.com/pbernasconi/ebd1551c8c619fba0a9a

我希望它有所帮助