web-dev-qa-db-ja.com

phonegap-sqliteまたはIndexedDB?

私はphonegapから始めるWeb開発者です。 iPhone用のアプリを1つ作成する必要があります、AndroidおよびWindowsPhone8。
一部のデータ(localStorageには大きすぎる)をローカルに保存する必要があります。
魔女の解決策が最善かどうかはわかりません:

  1. Phonegapはストレージを提供します(WebSQLに基づく-非推奨です)が、WindowsPhoneではサポートされていません。このギャップを埋めるためのプラグインはありますか?
  2. Indexed DBについて読んだことがありますが、これまで使用したことがなく、直感的ではありません。すべてのプラットフォームで完全にサポートされているかどうかわかりませんか?私は( http://blog.nparashuram.com/2012/10/indexeddb-example-on-cordova-phonegap_12.html )に基づいています
  3. または、phonegapプラグインを使用できます https://github.com/marcucio/Cordova-WP-SqlitePlugin Windows Phoneおよび https://github.com/marcucio/Cordova-SQLitePlugin for Android and iphone。 。そうすると、私のコードはすべてのプラットフォームで同じになると思います。

誰かが以前にそのようなアプリを作成したことがありますか?私はどんな解決策やアイデアにも大いに役立ちます。

19
Iwona Trąbka

CordovaWP8はIndexedDBのみをサポートします。 iOSおよびAndroid WebSqlのみ。WebSqlは非推奨になっているため(多くの人がそれを愛し/使用していることを知っており、多くの状況でWebSqlが非常に優れていることに同意します)IndexedDbを続行して使用することをお勧めしますAndroid/iOS用の次​​のポリフィル。

IndexedDB APIをWebSQLで動作させるIndexedDBのPhoneGapポリフィル

12
Sergei Grebnov

IndexedDB-

  • 多くの種類の人気のあるモバイルOSおよびバージョンと互換性がありません
  • 非常に特定のバージョンのモバイルOSとのみ互換性があります
  • 開発者は、IndexedDBでSQLを使用できません。 SQLステートメントはSQLiteおよびWebSQLで使用できます
  • ほとんどの開発者は、可能な限りIndexedDBの使用を積極的に避けています

WebSQL-

  • W3Cによって非推奨になりました。つまり、保守も開発もされていません。
  • モバイルアプリケーションがGoogle Android and Apple iOSなどの一般的なモバイルOSで動作できるようにするには、別のプラグインが必要です

SQLite-

  • グーグルから賞を受賞
  • SQLiteには公式ウェブサイトがあります。 IndexedDBとWebSQLはしません
  • Googleでは、SQLiteは180万件の結果を返します。 WebSQLは700Kより少し少ない結果を返し、IndexedDBは282Kの結果を返します。
  • 開発者はSQLiteで一般的なSQLステートメントを使用できます
  • IOSやAndroidなどの人気のあるすべてのモバイルOSのほとんどのバージョンと互換性があります

SQLiteの簡単なチュートリアルが必要な場合

AndroidおよびPhonegap を使用したSQLiteデータベースのストレージ

3
KershawRocks

最新の更新(2014年5月5日): MS OpenTechによる新しいクロスプラットフォームCordovaWebSQLプラグイン

Microsoft Open Technologies is publishing the new open sourceWebSQLプラグインfor Apache Cordova and PhoneGap. This plugin allows developers to integrate a persistent SQL-based local storage solution in their Cordova apps using the exact same JavaScript code across Android, iOS, Windows Phone and Windows Store.

3

LocalForageが最良かつ最新のソリューションのようです: https://github.com/localForage/localForage (1000コミット、 83人の寄稿者)

サポートされていないナビゲーターのフォールバックがあります。私はまだ(phonegapを介して)試していませんが、すぐにフィードバックを提供します;)

3
gtamborero

私のオープンソースライブラリydn-dbを使用するのはどうですか?それらの上に非常に素晴らしい抽象化レイヤーがあります。

編集:

1
Kyaw Tun