問題タブ [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.
javascript - Firebase-GeoFire を使用してユーザーの近くにあるレストランのリストを取得する
GeoFire に保存されている固定の場所を持つレストランのリストがあります。ここで、ユーザーの位置から一定の半径内にあるレストランを表示したいと考えています。GeoFire を使用してこれを達成するにはどうすればよいですか。ここのドキュメントhttps://github.com/firebase/geofire-js/blob/master/docs/reference.md#geofiresetkeyorlocations-locationは主に、key_entered、key_exited などを使用して処理される geofire の「キー」が移動するソリューションを提案しています。 .しかし、近くにあるキーにアクセスする方法がわかりません。
私のコントローラコードは次のようになります:
キーはコンソールに出力されますが、filteredRest 配列にはプッシュされません。
次のリンクで「使用例」を達成しようとしています: https://github.com/firebase/geofire-java#example-usage
同様の質問がありますが、それらのほとんどは ios/swift にあり、回答はあまり有益ではありません。GeoFire-JavaScript を使用しています。どんな助けでも大歓迎です。
ios - 保存された検索半径を GeoFire で適切に使用するにはどうすればよいですか?
私は GeoFire を使用して、ユーザーがアプリで設定して FireBase に保存できる特定の半径を検索しています。ページが読み込まれると、GeoFire クエリを実行する前に、Firebase から半径を取得しています。ただし、以下のコードを実行すると、次のエラーが表示されます: Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Precision must be less than 23!'
戦略的に配置されたいくつかの print ステートメントをいじってみると、GeoFire クエリが実行されるまでに searchRadius が 0 として返されているように見え、非同期読み込みが行われているのではないかと思いました。
私の質問は、searchRadius が 0 であるためにこのエラーが発生しているのかということです。その場合、ユーザーの検索半径を取得する FireBase ブロックが GeoFire クエリの前に実行されるようにするにはどうすればよいですか?
swift - firebase データベースで Geofire の投稿を構成するにはどうすればよいですか
他のすべての投稿で、子を持つノード/キーが引用符でデータベースに保存されていて、私のものではないことに気付きました。
私の
その他/私がそうあるべきだと思うもの
「.indexOn」でこれと同様のエラーが発生するまで、私はそれについて何も考えませんでした。「.indexOn」を追加しようとしましたが、キーに記号を含めることができないというエラーを受け取ったので.
(許可されていない他のいくつかの文字とともに)、次の.
ようなものなしで入れました:
Locations{
(specific id){
g: "345jh3i5jh"
l{
0: 37
1: -120
}
indexOn: "g"
user: "0987435098723098Gjhf90"
}
}
そのため、正しい結果が返されることがあるため、動作しているように見えobserveEventType
ますが、データベースに「.indexOn」を配置する必要があるというエラーも表示されます。どうすればいいですか?
私が対処したよりも多くの問題がある可能性があるため、ヘルプと明示的な例をいただければ幸いです。これを迅速に行い、読んでくれてありがとう!
android - GeoFire を使用して Android の Firebase Recycler ビューにデータを入力する
近くの人/場所が誰であるかを確認できるように、リサイクラー ビューにデータを入力したいと考えています。私は GeoFire を使用してデータベースにクエリを実行しています。これは次のようになります。
そして私はこのFirebase RecyclerViewを使用しています
これらのチャットホルダークラスとチャットオブジェクトクラスで
現在、FirebaseUI ライブラリで提供されているこのアダプターは、recyclerview にデータを入力するため、1 つの参照のみが使用され、すべての子イベントがビューに表示されます。次に、キーが入力されるたびに recyclerview にデータが入力されるように、recyclerView にデータを入力したいと考えています。私のキーに基づいて=私の参照に、これは私のfirebaseデータベースが私のfirebaseデータベースにどのように見えるかです
ios - 距離で Geofire の結果を並べ替える
iOS 用の Geofire を試してみましたが、サークル クエリで検索位置からの距離を返す方法が見つからないようです。GFQueryResultBlock はキーと位置のみを返します。自分で距離を計算しなければならないと仮定するのは正しいですか?
Firebase を使用して近くのレストラン アプリを作成していて、ユーザーに最も近い 20 のレストランを表示したいとしましょう。サークル クエリを作成し、20 軒のレストランが見つかるまでループを介して検索範囲を広げることができます。次に、それぞれの距離を計算し、ユーザーに表示する前に並べ替えます。データを構造化する (距離の計算と並べ替え) ためにアプリで大量の作業が行われていることを考えると、これは合理的なアプローチですか?
javascript Geofire クエリが中心からの距離を返すことに気付きましたが、iOS と Android のバージョンはこれとは異なると思います。
angularjs - Firebase + GeoFire : 異なる半径の Goequery
それが可能かどうかを知りたいのですが、可能であればどのように行うことができますか: Geofire と AngularJs を使用して、A エリアのすべての要素を
A = lat,lng + radius
で表示したいと思います。
25km
ジオクエリを使えば簡単ですが、
B = lat,lng + radius:8km
C = lat,lng + radius:20km
D = lat,lng + radius:5km
の場合、C エリアは A エリアにあります。下の画像:
Geoquery でエリアをまたいで共有している C のようなすべての要素を取得することは可能ですか?
これを実行する方法を教えてください。
ありがとうございました
ios - Firebase データベースの構造とクエリ形式のオプション
基本的に、私のアプリには、賛成票/反対票を投じることができる場所に基づく投稿があります。指定された地域にあり、過去 24 時間に作成された上位 15 件の賛成票を返すクエリを作成する必要があります。SQLのバックグラウンドから来て、JSON形式とfirebaseの組み込みの順序によるクエリとフィルタリングオプションを使用すると、これを行うのが不必要に難しいことがわかりました。多くのクライアント側のフィルタリングが必要になる可能性が高いことを認識しているため、クライアント側のフィルタリングを最小限に抑えるには、JSON 構造とクエリ形式をどのようにするかを尋ねています。これまでのところ、これは私のJSON形式がどのように見えるかです:
Geofire を使用してみましたが、残念ながら地域ごとにクエリを実行する機能しかないようです。また、地域と投稿された時間 (とりわけ) でクエリを実行したいため、Geofire を使用するとうまくスケーリングできません。