問題タブ [local-datastore]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - Parse でピン留めされたオブジェクトを表示および更新する
Parse ローカル データストアをローカル キャッシュとしてアプリに統合しようとしています。
ほとんどの場合同じままで、時々追加または削除できる項目のリストを表示したいと考えています。
これらの変更は、Parse.com Web サイトで管理されます (現時点では)。
私ができるようにしたいのは、ローカルに固定されたオブジェクトを表示すると同時に、オンラインから変更を取得し、表示されたアイテムを更新してそれを反映させることです。
私が読んだことから、ローカルクエリとオンラインクエリは相互に排他的です。
だから、これを行う唯一の方法は、次のようなことをすることだと思います...
- すべてのアイテムを取得して表示するローカル データストア クエリを作成します。
- Parse.com に接続するクエリを開始し、(潜在的に) 更新されたアイテムをダウンロードし、変更を固定します。
- 別のローカル データストア クエリを実行して、アイテムの更新されたリストを取得し、それらを表示しているテーブルビュー (またはその他のもの) をリロードします。
私の仮定は正しいですか?または、これを行うより良い方法はありますか?
ios - 追加データを parse.com 経由でローカルにのみ保存する
parse.com Web サイトで Level クラスを作成し、対応する Swift クラスを iOS プロジェクトでも作成しました。私が今やりたいことは、ローカルに保存されたデータを追加のデータで拡張することです。たとえば、ユーザーはハイスコアを所有しています (グローバルなものではありません)。
私の現在のクラスは次のようになります
アプリの起動時に一度 parse.com にクエリを実行し、残りのアプリの実行時にローカル データストアのみを使用します。
私が直面している問題は、解析から新しいレベル リストを取得してローカル データベースに固定すると、以前に作成した追加の値が失われることです。
これらの parse.com オブジェクトの更新を固定するときに、古い追加データを保持する方法はありますか?
-
UserSpecificData
または、同期されず、すべての (ユーザー + レベル) 固有のデータを含む2 番目のローカル テーブル/クラスを作成するために、これを達成する唯一の良い方法はありますか?
android - Parse.com でローカル データストアを使用する方法
Parse にデータベースを持つ Android の小さなプロジェクトがあります。それで、データを Parse から local datastore に変更したいのですが、Parse でローカル データストアを有効にしましたが、コードを変更する方法がわかりません。これは、Parse コードからのダウンロード データです。
私のバス停クラス:
私のアプリケーションファイル:
どうすれば修正できますか?
java - Android: How to synchronize queries with Bolts from Parse.com?
I am using Parse.com
as a backend for my app. They also offer a local database to store information, as an alternative to SQLite
.
I want to add numbers from phone to my database with parse. Before adding a number I need to check if the number already exists in the database, so I use findInBackground()
to get a list of numbers that match the number I want to add. If the list is empty the number I want to add doesn't exists in the database.
The method to do this is:
Then I call this method 3 times to add 3 numbers:
Notice that the third number is the same as the first, and it shouldn't be added to database. But the logcat
shows:
The third number was added even if it wasn't supposed to do this, because fintInBackground()
is running in 3 background threads almost simultaneously, so it will find that there is no number in the database like the one I want to add.
In this question a guy told me that I should use Bolts
library from Parse
. I read about it from here and some Parse
blog posts, but I don't fully understand how to use this with the method I already have, and how to syncronize the queries to be executed one after another.
If someone worked with this library please guide me on how to do this or provide some basic examples so I can understand the workflow.
Thanks!
ios - Parse.com iOS objectWithoutDataWithObjectId およびローカル データストア
コンテキスト: ユーザーがプレイを開始するためにインターネット接続を必要としないように、ゲーム アプリを完全にオフラインで動作させたいと考えています (接続がないと特定の機能が無効になります)。この目的のために、ユーザーが parse.com からダウンロードする必要がないように、アプリ バンドルに含めたい parse.com から静的データの PFObject サブクラスをエクスポートしました。
静的データの PFObject サブクラスが Foo で、Foo へのポインターを持つ Bar という名前の別の PFObject サブクラスがあるとします。機内モードで次のすべてを実行します。
[query includeKey:@"foo"] を呼び出してフェッチしたにもかかわらず、bar.foo.isDataAvailable が 0 である理由はわかりますか? 私の理解では、objectWithoutDataWithObjectId を使用して、パース クラウド内にオブジェクトのローカル コピーを作成し、ポインター関係で使用できます。ローカル データストアのみを使用している場合 (つまり、機内モードで)、これらのオブジェクトで何ができるかを誤解していますか?
また、objectWithoutDataWithObjectId を使用せずに ([Foo object] を実行する代わりに) 同じことを試しましたが、問題なく動作します。これを回避策として使用できる可能性があります (静的データの一意性を確保するためのクラウド コードと一緒に) が、Cloud Data クォータにカウントされるため、使用したくありません。
どんなフィードバックでも大歓迎です!
ios - Parse-Server を使用している場合、Parse LocalDataStore が機能しません - 「メソッドには Pinning を有効にする必要があります。」
最近、Parse-Server の使用を開始し、Parse アプリを移行しました。Parse Local DataStore を使用しようとすると、次のエラーが表示されます。
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Method requires Pinning enabled.'
これは、エラーを生成するコードです。
次のように呼び出して古い方法で解析を初期化すると、次のようになります。
その後、Local DataStore は正常に動作しますが、Parse を新しい方法で初期化すると、エラーが発生します。
Parse が初期化される前に呼び出し[Parse enableLocalDatastore];
ています。念のため、後で呼び出してみました。
お時間をいただきありがとうございます。