データレス:
私は、私が試してみて、この問題を解決するためにいくつかのメソッドをしようと試みてきた。現在ログインしているユーザーの詳細を表示しようとしていますが、それはリターンに思えるすべてはnullです。私のユーザーfirebaseデータベースは次のとおりです。
私は間違ってどこに行くのですか?
FirebaseAuth mAuth = FirebaseAuth.getInstance();
FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
Button mBeerButton;
Button mBeerButtonTwo;
Button mBeerButtonThree;
Button mBeerButtonFour;
Button mSignOutButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home_screen);
String mUserID = firebaseAuth.getCurrentUser().getUid();
DatabaseReference ref= FirebaseDatabase.getInstance().getReference().child("Users");
ref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
String mUsername = dataSnapshot.child("mUserName").getValue().toString();
Toast.makeText(homeScreen.this,"User name is "+ mUsername,Toast.LENGTH_SHORT).show();
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
イルカKulyyev:
あなたのJSONの構造を見てください。あなたは、ノードの1つを飛ばしています。次のように変更します。
ref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
String mUsername = dataSnapshot.child("JoBlogsUser").child("mUserName").getValue().toString();
Toast.makeText(homeScreen.this,"User name is "+ mUsername,Toast.LENGTH_SHORT).show();
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});