PhoneGapアプリでのAngularjsデータの永続性のベストプラクティスを探しています。私はIonicこの上にフレームワークを使用していますが、これはAngular&Cordova。
私はそれが好きですAngularはデータ永続化ソリューションで柔軟性を維持します、それは特にハイブリッドアプリフレームワークではないWebフレームワークです...人々がこれをどのように解決しているかを知りたいです。
概要は次のとおりです。
私は次のオプションを見てきました。これらのいずれかについてフィードバックを提供できますか?
長い投稿でごめんなさい。私は本当にベストプラクティスについてのいくつかの考えを見てみたいです。 Angularハイブリッドモバイルアプリで大量のデータの永続性を処理する方法を望みます。
ありがとう
PouchDB開発者はこちら。明らかに私は偏見がありますが、ここに私の見解があります:
PhoneGap/Cordovaのストレージクォータを回避する最良の方法は、iOS/Androidで SQLiteプラグイン を使用することです。 特にAndroidでは、パフォーマンスも向上する傾向があります。 (Edit:現代のKitKat以降のAndroidでは、実際はもっと悪いです。)
WebSQLにはすてきなクエリ言語がありますが、将来に備えて、つまり、死んだ標準に縛られないようにしたいのです。考慮すべきWindows PhoneとFirefox OSもあります。
したがって、PouchDBを使用してPhoneGapプラグインをインストールすると、クロスブラウザーで機能し、iOS/Androidのストレージ制限を回避できます。勝つ?
また、AngularはPB&JのようなPouchDBに適合します。なぜなら、AngularはまっすぐなJSONオブジェクトを扱い、Pouchも同様です。 EmberおよびBackbone、JSONへのインポート/ JSONからのインポートが必要なカスタムクラスがあります。少し複雑です。)
何を選んでも幸運を祈ります!
LocalForageと私の実装を角度で使用できます: https://github.com/ocombe/angular-localForage モバイルではindexedDBまたはwebSQLを使用します初期制限は50 MBです。 angularプロジェクトで構文は本当に使いやすいでしょう。
Indexeddb-ほとんどの主要なブラウザー用に互換レイヤーを構築するシムがあります。 5Mの制限。これをSqliteの上で使用できれば、より多くの標準に基づいているので私にとっては勝者になるでしょう。
実際、WebSQL(実際にボンネットの下で使用するシムの下のレイヤー)の制限は* 50 * Mです。ただし、より多くのストレージを取得するために使用できる許可要求があります。さらに、これは、あなたが指摘したまさにその理由、つまり標準のために私が推奨するものです。噂では、Safari 7.1にはIndexedDBのサポートが搭載される予定です。