9

如果我在 PhoneGap 中制作一个使用 localStorage 存储键/值数据的应用程序,这些数据会通过 iCloud 同步到其他设备吗?我不需要保存太多数据。

4

4 回答 4

21

我不同意@sciritai。

localStorage在 iOS 中只是一个存储在设备某处的 SQLite db 文件。

可能在以前的 Phonegap/Cordova 版本中情况有所不同,但在当前版本中,Phonegap 将localStorage.db文件写入您的应用程序的 Documents 目录。

具体来说:Documents/Backups/localstorage.appdata.db

由于 Documents 目录是针对每个应用程序的,因此它会自动保存到 iCloud。

当我检查 iOS 中的 iCloud 设置时,我可以确认这一点(在 下Storage & Backup > Manage Storage)。

我可以看到我的 HTML5 iOS 应用程序正在备份到 iCloud。这包括 localStorage 中的数据:)

我相信这意味着如果你有多个设备,localStorage 将在它们之间同步——尽管我自己还没有确认。我不确定 iOS 将如何处理 localStorage 文件中的冲突。

于 2012-10-31T21:05:31.657 回答
7

我和@asgeo1 在这个上。我刚刚提交的一个 phonegap 应用程序被苹果拒绝了,因为它大量使用本地存储的临时文件,并且这些文件被输入到 icloud 上的备份中。

解决方法是将其添加到您的 config.xml 中:

<preference name="BackupWebStorage" value="none" />
于 2014-11-17T16:15:53.387 回答
5

就像 asgeo1 说的那样,localstorage 确实保存到了 iCloud。您可以通过在 config.xml 中将 BackupWebStorage 设置为 none 来关闭此功能。是 Phonegap 文档的链接。

请注意,只有用户数据可以存储到 iCloud。离线所需的数据可能不会存储在 iCloud 中。是苹果问答的链接。

于 2013-09-19T11:52:31.760 回答
-2

不,localStorage 是基于浏览器的,并且通过 Phonegap 为您提供的 UIWebView 持续存在,它不依赖于应用程序。

您可以编写一个插件来访问文档目录,以使用 Phonegap 将信息保存到 iCloud。

旧的错误信息在这里。请参阅下面的@asgeo1 的答案。

于 2011-10-18T20:58:28.507 回答