-1
private FirebaseAuth firebaseAuth=FirebaseAuth.getInstance();;
private FirebaseUser firebaseUser=firebaseAuth.getCurrentUser();
/******************************After declaration**************************************/
userIDDatabaseReference=FirebaseDatabase.getInstance().getReference("login");
userIDDatabaseReference.child(firebaseUser.getUid()).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Log.w("Show out:", "In Firebase ValueEventListener");
LoginClass tempClass=dataSnapshot.getValue(LoginClass.class);
loginID=tempClass.getLoginID();
}
@Override
public void onCancelled(DatabaseError databaseError) {
System.out.println("Database Error: "+databaseError.getDetails());
}
});
以上 是我的編碼,我想找回loginID
但我的事件監聽器不火的log.w我以前不不,我logcat的打印任何日誌,我認爲我的函數不會觸發onDataChange()
,因爲它每次都會返回空值爲loginID
。有人能告訴我我錯過了什麼嗎?我提到所有相關的文檔,我真的不知道這裏有什麼問題。@Firebase的事件偵聽器檢索數據不起作用
謝謝~~
爲什麼你的userIDDatabaseReference指向「登錄」? –
@AmineHarbaoui,ops,我的錯,我想從login節點檢索loginID,請參考下面的圖片 –
檢查uid是否相同,並檢查onDataChange函數是否被調用? –