Phonegap数据库选项,IndexedDB,SQLite?

时间:2014-06-07 17:11:01

标签: android ios sqlite cordova

我正在构建一个Phonegap应用程序,需要将数据存储在数据库中。我希望能够脱机访问此信息,但也可以将其同步到服务器。我希望这个应用程序尽可能在所有平台上运行。我知道有很多帖子都有类似的问题,但我找不到任何相对较新的帖子。

我已经对它进行了大量的研究,但它让我更加困惑。我知道现在除了IOS Safari之外的所有浏览器都可以使用IndexedDB(但是会在IOS 8 http://caniuse.com/indexeddb并且我的应用程序可能在此之前完成)但我听说webSQL(SQLite)更好,但是当然是折旧的。

我应该像Samuel的评论一样使用SQLite吗?他也有一个同步插件。 SQLite database on PhoneGap / iOS - More than 5mb possible

或者使用Polyfill for IndexedDB,如此处所述? http://blog.nparashuram.com/2012/10/indexeddb-example-on-cordova-phonegap_12.html

我刚刚来到这个图书馆,有没有人用它?看起来很有希望...... http://pouchdb.com/learn.html

还是完全不同的东西?

还有用于同步到服务器的插件吗?

感谢您提前做出任何回复

3 个答案:

答案 0 :(得分:1)

我想知道是否有人会肯定地回答这个问题,我也想知道答案。直到现在我会建议SQLite包装器。那个塞缪尔的回答看起来很有希望。

或者您可以使用sqlite / websql并使用php或asp脚本自己编写同步代码。

答案 1 :(得分:0)

在开发许多设备和平台的情况下。 您必须明确哪种技术具有最佳支持,哪种技术具有前瞻性。

IndexedDB是最好的方式!因为它具有前瞻性。 实际上Cordova / Phonegap项目用于iOS旧版WebView而不是wkwebview! 因此,只有一个可读的indexeddb,你必须使用pollyfil解决方案。 但是时间问题,当解决问题时。

在其他平台(Android / Win8等)中支持nativly indexeddb。 如果你知道如何使用它,它会非常快。

答案 2 :(得分:0)

我结束了LocalStorage。它具有良好的支持并且易于使用。另外我在后端使用MongoDB,所以从前到后的所有内容都保持为javascript / JSON

http://caniuse.com/#feat=namevalue-storage