2015-11-24 14 views
7

私は、ユーザーが現在の場所の特定の半径内の投稿を閲覧できるようにするAndroidアプリを持っています。私はfirebaseを使用して投稿を保管していますが、firebaseの特定の半径内の投稿を照会する方法を見つけることができなかったので、今はgeofireを使用することを考えていますが、場所を保存する方法があるかどうかはわかりませんgeofireを使用している私のfirebaseのポストの横にあるので、場所をポストに関連付ける唯一の方法は、ポストid(firebaseによって生成されたもの)をgeofireの場所のキーにすることです。これは正しいのですか、それとも良い方法がありますか?ジオファイアの場所をFirebaseの項目に関連付けます。

+2

右の音。ほとんどの実装では、地理データが最小限のデータしか処理しないように、地理データとは別に投稿のプロパティが保持されます。ご紹介についてはhttps://geofire.firebaseapp.com/をご覧ください。 –

+0

ここで投稿を取得するには2つのクエリが必要です。 1つはGeofireを使用して現在の場所の特定の半径内の場所を見つけ出し、そのキーを取得し、もう1つはFirebaseを使ってGeofireの場所のIDと一致するすべての投稿の投稿情報を取得します。私は1つのクエリを使用することを望んでいたが、それはこのようにしなければならないようだ。 – dramzy

+2

2番目は厳密にはクエリではありません。それはIDによる直接ルックアップです。 Firebaseが既存のソケット接続を介して動作し、それらをパイプライン化できるとすれば、これらのルックアップはかなり高速です。そうでない場合:問題のあるコードで新しい質問を開始してください。 –

答えて

0

はい、正しい方法です。フラットDBを作成します。ポストデータを持つ1つのブランチとロケーションを持つ1つのブランチ

関連する問題