DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("teacher");
ref.orderByKey().equalto(currentuser.getUid()).addChildEventListener(new ChildEventListener() {
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
String value=dataSnapshot.child("teacherName").getValue().toString();
}
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
}
public void onChildRemoved(DataSnapshot dataSnapshot) {
}
public void onChildMoved(DataSnapshot dataSnapshot, String s) {
}
public void onCancelled(FirebaseError firebaseError) { }
});
リファレンスあなたが照会する場所はaddChildEventListener
とクエリを実行します。
FirebaseUser currentuser = FirebaseAuth.getInstance().getCurrentUser();
UIDをお持ちの場合は、情報を入手しやすくなります。あなたの問題は、間違ったレベルの情報にアクセスしようとしていることです。情報にアクセスするあなたの論理を共有してください。これを試してください: - DatabaseReference ref = FirebaseDatabase.getInstance()。getReference();文字列uri = ref.child( "YOUR_UUID")。子( "imageUri")。 –
私はあなたの応答をありがとう。私は自分のコードを削除し、あなたの提案された解決策を実行しますが、.value()メソッドはありません。さらにこの時点では、getValueメソッドが表示されていません。 –
ここにコードはあります:auth = FirebaseAuth.getInstance(); 文字列userID = auth.getCurrentUser()。getUid(); databaseReference = FirebaseDatabase.getInstance()。getReference(userID); databaseReference.addValueEventListener(新しいValueEventListener(){ 公共ボイドOnDataChangeの(DataSnapshotのDS用(DataSnapshot dataSnapshot){ :dataSnapshot.getChildren()){ 文字列の子= ds.getValue()のtoString(); のSystem.out。 .println(「子供がいる:」+子); } –