Core data Cordova/Phonegap应用程序中的HTML5本地存储能否同步到iCloud?

Core data Cordova/Phonegap应用程序中的HTML5本地存储能否同步到iCloud?,core-data,cordova,local-storage,icloud,Core Data,Cordova,Local Storage,Icloud,我有一个在iOS上运行的Phonegap/Cordova应用程序。它将数据保存到HTML5本地存储中 我正在尝试确定是否可以将本地存储数据(使用iCloud)同步到其他iOS设备,甚至是OSX 据我所见,在iOS中,localStorage实际上是作为SQLite数据库实现的,它(在使用Phonegap/Cordova时)被写入应用程序的Documents目录: 文档/备份/localstorage.appdata.db 我还了解到,在iCloud中存储数据有三种主要方式: 键/值存储 UID

我有一个在iOS上运行的Phonegap/Cordova应用程序。它将数据保存到HTML5本地存储中

我正在尝试确定是否可以将本地存储数据(使用iCloud)同步到其他iOS设备,甚至是OSX

据我所见,在iOS中,localStorage实际上是作为SQLite数据库实现的,它(在使用Phonegap/Cordova时)被写入应用程序的Documents目录:

文档/备份/localstorage.appdata.db

我还了解到,在iCloud中存储数据有三种主要方式:

  • 键/值存储
  • UIDocument/NSDocument
  • 核心数据
我知道我不能使用Key/Value iCloud存储方法,因为我有超过1MB的数据要存储,使用该方法每个应用程序的限制是1MB

,我相信是在谈论UIDocument方法,并询问是否可以使用该方法在iCloud中存储SQLite db文件。答案是否定的,因为数据库可能会损坏

这就剩下了核心数据方法

所以我的问题是——这行吗?我可以使用核心数据将localStorage.db文件同步到iCloud吗

我从未使用过核心数据,也不太了解它。我只是想知道这是否可能,或者是否还有什么我不明白的


有没有其他方法可以在iOS设备或OS X之间同步localStorage数据?

不幸的是,答案似乎是否定的,核心数据不能与HTML5 localStorage一起使用

除使用核心数据创建的数据库外,核心数据不能与SQLite数据库一起使用。如果尝试,则在XCode中会出现以下错误:

SQLite error code:1, 'no such table: Z_METADATA'
核心数据文档对此进行了解释:

尽管核心数据支持SQLite作为其持久存储之一 类型,则数据库格式为私有。不能创建SQLite 使用原生SQLite API的数据库,并将其直接用于核心数据 (您也不应该使用 原生SQLite API)

不过我还是想解决这个问题。我正在考虑创建一个Javascript API来镜像localStorage API。这将是一个phonegap插件,可以调用objective-c代码,并有效地将其更改写入核心数据数据库。然后核心数据数据库应该能够同步到iCloud

如果有效,我会回来更新这个答案