2017-08-14 68 views
0

我想從我的火力地堡數據庫,它看起來像獲得UID的值:爲什麼我沒有從Firebase獲取兒童價值?

enter image description here

而下面是我的代碼,以獲得其價值

mPostKey=getIntent().getExtras().getString("profile_id"); 
    mDatabase= FirebaseDatabase.getInstance().getReference().child("Profiles").child(mPostKey).child("uid"); 
    mDatabase.addListenerForSingleValueEvent(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 

      mUid=dataSnapshot.getValue().toString(); 
     } 

     @Override 
     public void onCancelled(DatabaseError databaseError) { 

     } 
    }); 

我的調試器顯示這些值

enter image description here

我指着UID正確,但我無法獲得它的價值,我一直在mUid中獲得空值。

+0

調試您的dataSnapshot對象。 –

+0

函數onDataChange沒有運行多數民衆贊成的問題,你知道可能是什麼原因? –

+0

onCancelled()正在運行? –

回答

0

您需要更改這行代碼:上述聲明之後

mUid=dataSnapshot.getValue().toString(); 

String mUid=dataSnapshot.getValue(String.class); 

添加也是這行代碼來驗證它的工作原理:

Log.d("TAG", mUid);