私はFirebase Androidでチャットベースアプリを開発しています。同じ結果を得るには2つの方法がありますが、どれがパフォーマンスが良いかを検出することはできません。次のように助けが必要です。Firebase Android:選択したノードをどのように照会するのが良いですか?
DB構造:
Firebase -
- User
- user id
- name
- DOB
- userId
私は、選択したキーのユーザ情報を取得する必要があります。以下のように2通りの方法があります。
のuserIdまでFirebaseデータベース参照を作成し、イベントリスナーを追加します。
database.child("Users").child(userCurrent.getUserId()).addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { } @Override public void onCancelled(DatabaseError databaseError) { } });
ユーザーノードまでFirebaseデータベース参照を作成し、探してみてくださいキーに
equalTo
クエリを使用することにより、正確なユーザー:database.child("Users").orderByKey().equalTo(userCurrent.getUserId()).addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { } @Override public void onCancelled(DatabaseError databaseError) { } });
ウィル2番目のオプションはすべてのユーザーをUser
ノードからフェッチしてからequalTo
をクエリしますか?
以下を読み、質問の書式設定の問題を修正してください。http://stackoverflow.com/help/formatting – cartant