iphone - Phonegap (1.4.1) 存储不再适用于 iOS 5.1

标签 iphone ios sqlite ios5 cordova

我使用 Phonegap 开发了适用于 Android 和 iOS 的应用程序。这两款应用程序均已成功运行并可在商店购买。现在我添加了一些更新更改。如果我在上一版本中存储了数据(使用 SQLite 数据库)并更新到新版本,则 IOs 5.1 上的存储 Api 将不再工作。

如果我打电话

 var db = window.openDatabase("mydb", "1.0", "", 5000000);

没有任何反应。

它在 Android 上运行良好,如果我进行新安装或者如果我的应用程序的先前版本的数据尚未存储在数据库中,它也可以运行。我正在使用其他 Phonegap 功能,例如通知或 localStorage,它们工作得很好。

任何帮助将不胜感激,因为我真的没有想法了:)

最佳答案

Webkit 存储和 iOS 5.1 的问题均得到修复

  1. 存储从/Webkit 移至/Cache
  2. 在 iOS 5.1 下,存储未根据应用更新的文件夹结构进行调整(WebKit 错误)

https://issues.apache.org/jira/browse/CB-330

这个解决方案似乎比仅仅更改调用私有(private) API 的 Webkit 数据的位置更安全。当应用程序运行时,会使用 Webkit 存储位置。恢复或终止时,所有数据都会备份到文档文件夹中。时间戳确保旧备份无法覆盖较新的存储数据(如果应用程序崩溃...)。

最好的:使用较旧 iOS 版本且使用包含该修复程序的应用程序的用户,在任何 iOS 更新时都不会遭受损失。这就是为什么人们不应该等待......

关于iphone - Phonegap (1.4.1) 存储不再适用于 iOS 5.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9671310/

相关文章:

android - GreenDao无法设置数据库

c++ - 如果我为多个编写器使用额外的互斥锁,我可以在 SQLite3 中使用 WAL 模式吗?

iPhone 3.2 Base64 编码

iPhone iOS如何实例化一个黑白CGColorSpaceRef?

ios - 修复实时 View 问题

ios - Cocos2d-x Parallax with Accelerometer(如何在到达边缘和改变方向时平稳停止)

ios - CLLocation 当前位置不工作

java - Android studio SQLite 主键未返回

iphone - iPhone 上的 CSS 输入按钮

iPhone Facebook Graph API 库