【问题标题】:Saving gamestate on HTML5 Cordova. Can't read/write with cordova-file-plugin在 HTML5 Cordova 上保存游戏状态。无法使用 cordova-file-plugin 读/写
【发布时间】:2016-12-11 13:58:20
【问题描述】:

我有一个 HTML5 游戏,通过 Cordova 移植到 Android。现在我希望在会话之间保持游戏状态。我计划使用 cordova-plugin-file 将状态作为 .json 保存到持久数据目录中。

我正在使用 Cordova 6.2.0cordova-plugin-file 4.2.0,我在 deviceReady 事件之后运行我的代码。

为了编写和读取文件,我尝试应用来自offical documentation 的示例(这是一组没有有用解释的回调......)。在手动请求配额后,我可以应用“创建持久文件”示例在 Chromium 下运行,否则 requestFileSystem 失败并显示“安全错误:文件访问次数过多”(抱歉,没有逐字记录)。在 Firefox 上,requestFileSystem 失败并出现相同的错误,无论我尝试了什么。在 Android 上 fileEntry.getFile 失败并显示“找不到文件”。直接调用writeFilereadFile方法会再次导致所有场景的安全错误。

有没有人有一些很好的示例代码(或有用的教程)来解决我的问题:

  1. 如果存在,则读取持久性 .json 文件(或文本文件,无论如何我都需要对其进行解析)(无需过多检查是否存在,如果文件不存在则简单地抛出就足够了)
  2. 编写一个持久的 .json 文件(或文本文件)
  3. 在 Android 上工作,并且可能跨浏览器

更好的示例(例如 Raymond Camden 的示例)已经过时并且会引发不同的错误。

我也准备好接受一个有效的跨平台解决方案,该解决方案完全避免使用 Cordova 插件。

【问题讨论】:

标签: android file cordova filesystems


【解决方案1】:

我认为最好的解决方案是使用本地存储,您可以在此处找到它的文档: Local Storage

在我看来,本地存储非常快速、简单且安全。

【讨论】:

  • 哦。我已经与文件插件进行了如此艰苦的斗争,以至于我完全忘记了那个。当然,这是最简单的解决方案。谢谢提醒!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多