我有這樣的標準火力地堡電話:火力地堡ValueEventListener返回不存在的關鍵
ref.child("user/toys/-K2873267832")
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot != null) {
// wow the Data at Firebase database does not exist
}
}
}
的問題是,裁判"user/toys/-K2873267832"
不存在。當我在console.firebase.google.com上刪除密鑰時,dataSnapshot
應該沒有數據權限。即使是鑰匙user/toys
也被刪除。
我一直在爲這個項目工作一個月,並且在複雜的數據庫中有很多ValueEventListener
。這是我以前從未見過的東西。
什麼會導致這種情況發生?
那麼dataSnapshot不等於null? – Lyla
,DataSnapshot {key = -K2873267832,value = null} –
查看答案已發佈;你會得到該位置的價值,但這是預期的。也預計它不會有價值。如果您試圖檢查某個位置是否存在,則可以這樣做 - 使用值事件偵聽器,然後查看數據是否爲空。 您也可以在父節點上執行調用,並使用'hasChild'方法查看它是否存在,如[此處]所述(http://stackoverflow.com/questions/37397205/google-firebase-check-if-兒童存在)。 – Lyla