【问题标题】:Storage in a phonegap appphonegap 应用程序中的存储
【发布时间】:2015-05-06 17:42:04
【问题描述】:

我正在构建一个使用 Phonegap 的应用程序。这是一个学习平假名和片假名(日语脚本)的应用程序。

到目前为止它只显示一组静态数据,但我希望用户能够修改数据。

目前静态数据包含在 JSON 中。一共46个字符:

[
  {
      "id": 0,
      "name": "a",
      "hiragana": "あ",
      "katakana": "ア",
      "row": "a"
  }
]

我希望用户能够设置置信度:

[
  {
      "id": 0,
      "confidencelevel": 4
  }
]

我目前正在使用 localStorage 来存储一些用户偏好,但这只是一个键/值对。

我正在寻找一些建议:

  • 是否应该拆分数据:用户数据/静态应用数据,并使用 id 作为两个 JSON 文件之间的参考点?
  • 数据存储:如何以我可以轻松检索的合理格式存储数据?

请注意,对于第一次实施,我希望应用离线工作。

理想情况下,数据是持久的,并且在操作系统升级等情况下仍然存在。

【问题讨论】:

    标签: database cordova local-storage


    【解决方案1】:

    您可以使用WebSQL 创建一个数据库来存储此信息。唯一的缺点是你被限制为 5mb。它应该在用户更新后仍然存在,但如果用户清除他/她的缓存,本地存储可能无法生存。 (至少这曾经是个问题。我还没有检查过较新版本的phonegap,看看它是否仍然是个问题。)

    您也可以考虑制作一个插件来在您的目标平台上使用 SQLite 数据库。将所有数据库逻辑移至插件,并将数据作为对象进行操作和检索。

    已编辑:实际上我刚刚找到了一个 plugin,它已经将 SQLite 存储添加到 Cordova/Phonegap 应用程序中。

    【讨论】:

    • 一个WebSQL数据库的最大大小是50mb,超过5mb会提示用户是否要分配更多内存
    • 啊,是的。那是对的。因为我认为这会让用户感到困惑,所以我很少超过 5mb。对不起。感谢@epergo 的澄清。
    猜你喜欢
    • 2013-12-22
    • 1970-01-01
    • 2015-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多