問題タブ [geofire]

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.

0 投票する
3 に答える
4339 参照

android - 自分の手の届く範囲から 0.5 km 以内にある投稿を取得するにはどうすればよいですか?

ユーザーが投稿した投稿の座標を保存しています。プッシュ ID を生成し、それを使用して投稿のデータと geofire 座標の両方を保存しています。

半径 0.5 km 以内にある投稿のみを表示したい。GeoFire同じためにライブラリを使用していますが、タスクを達成できません。

プッシュIDを生成する方法は次のとおりです。

itemID = databaseReferenceRequests.push().getKey();

これを使用してジオファイア座標と投稿のデータを保存する方法は次のとおりです。

次のように保存されています。

ここに画像の説明を入力

問題は、私の手の届く範囲から 0.5 km 以内にある投稿のみを取得しようとすると、それが行われず、近くまたは遠くにあるすべての投稿が取得されることです。

これが私がそれを取得する方法です:

エラーは次のとおりです。

ユーザーから 0.5 km 以内にある投稿のみを取得する方法を教えてください。

0 投票する
0 に答える
29 参照

ios - Firebase ブロックの終了後にクエリ データが削除される

結果をGeoFireに渡す前に、ユーザーの保存された検索半径を取得するためにfirebaseクエリを実行しています。次のようになります。

最初の印刷行では、格納されている半径 (この場合は 4.xxxxxx) が出力されますが、2 番目の印刷行の後、角かっこの外側に印刷されます。したがって、コンソールでの結果は次のようになります。

どうしてこれなの?firebase で同様の問題が発生し、ObserveReadyWithBlock で解決しましたが、Firebase で問題を確認したのはこれが初めてです。

助けてくれてありがとう!

0 投票する
0 に答える
260 参照

android - GeoFire ListView クエリでリストビューにテキストが表示されない

ListView に結果を表示する Firebase GeoFire クエリを作成しています。この ListView の例はemanueletから入手しました。私は、emanuelet によって共有された要点で動作するようになりました。これで、geoQuery の logcat の値も取得できます。


これは、firebase で GeoFire データを構造化した方法です。 ここに画像の説明を入力


これが GeoQuery のフラグメントです。


これは、カスタム FirebaseListAdapter を拡張する、私が使用している ItemListAdapter です。


これは、GeoQueries に使用している emanuelet のカスタム FirebaseListAdapter です。


これはモデルクラスの投稿です

私はfirebase環境に慣れていないので、これらのGeoQueryはParse構造とはまったく異なります。混乱しています。この問題を解決するのを手伝ってください。私もxmlレイアウトで確認しましたが、正しいです。Logcatにも表示されたリストアイテムの数を正確に示しています。

0 投票する
1 に答える
2362 参照

android - Firebase android キーのリストから一度にデータを取得する方法

場所に基づいてキーを取得するためにfirebase geofireライブラリを使用していますが、キーを取得してfirebaseを参照し、オブジェクトを取得してリストビューに設定する必要があるたびに、何千ものキーが onKeyEntered() イベントに返されるため、非常に遅くなります。onKeyEntered() で他のすべての作業にコメントしてみて、ジオファイアの速さを確認しましたが、900 ミリのすべてのコールバックが受信されたことに驚きました。

onKeyEntered() コールバックで渡されたキーを使用してfirebaseからデータを取得し、リストビューに設定して、何千ものエントリでもリストビューが高速にロードされるようにするための最適化された最適な方法は何ですか

私はすべてのコールバックで AsyncTask を考え、データの取得作業を AsyncTask に渡し、次のコールバック キーに進み、同じことを行いましたが、それが正しいかどうかはわかりません。

または、ほんの少しだけロードしてからスクロールとしてロードすることも良い考えですが、ジオファイアはデータベース全体からキーを返すため、最新のものをいくつか取得するオプションがないため、実装方法がわかりません。

これは私が試していることですが、リスト ビューの読み込みが非常に遅くなります。

0 投票する
0 に答える
398 参照

android - GeoFire for Android から返されるキーの範囲を制限するにはどうすればよいですか?

私はこのドキュメントを端から端までたどり、StackOverflow でこの問題に関連する 6 ~ 7 件以上の質問もしました。また、Firebase サポートにメールを書きました。

GeoFireに座標とともにいくつかのデータを保存していますFirebaseDatabase。次のように保存されています。

ここに画像の説明を入力

今、私はこのコードを使用してそれを取得しようとしています:

問題は、自分から 1000 km 離れた場所から投稿された投稿も検索され、0.1 km 離れた場所から投稿された投稿も検索されるということです。示す。

これを達成する方法は?

0 投票する
2 に答える
1190 参照

android - GeoFire からクエリされるアイテムの数を制限する

同じ場所にたくさんのエントリーがあります。Geofire を使用して、最近追加された 10 個のアイテムのみを取得したいと考えています。Query.limitToLast() を使用して firebase で簡単に実行できることは知っていますが、Geofire で実行する方法がわかりません。

不可能な場合、適用できる回避策はありますか?

0 投票する
1 に答える
896 参照

swift - Geofire/Firebase を使用してユーザーのリストを作成する

GeoFire を使用して近くのすべてのフード トラックを取得する関数を持つ User というクラスがあります。私は、observeReadyWithBlock を使用して、GeoFire から返されたトラック ID を取得し、残りの情報を Firebase を使用して取得しました。ただし、名前と説明を追加した後、Truck オブジェクトの配列からトラックの 1 つにアクセスしようとすると、xCode が配列が空であることを通知しているように見えます。

この近くのトラックの配列を他のコントローラー クラスで使用して、近くのすべてのトラックと基本的な情報をユーザーに表示するテーブルを作成することを計画しています。

トラックの配列を適切に設定するにはどうすればよいですか。また、以下のコードに基づいて何が間違っている可能性がありますか。どうもありがとう!