[英]How to get the last data from realtime database of firebase in Android
[英]Get data from firebase realtime database in android
我正在嘗試從Android中的Firebase實時數據庫獲取數據。 我創建了一個json數據文件,並將該json文件導入了Firebase數據庫中。 數據文件如下所示:
{
"data": [
{
"name" : "one",
"age" : "ten"
},{
"name" : "two",
"age" : "twenty"
}
]
}
我創建了一個POJO類。 現在如何從數組中獲取所有json對象? 我搜索了一段時間,但無法理解這里的參考和孩子。
當您說val fireDataBaseRef FirebaseDatabase.getInstance().reference.child("data")
您持有的是根樹的引用。 使用此參考,您可以fireDataBaseRef.addChildEventListener(childEventListener)
哪里
val childEventListener: ChildEventListener = object : ChildEventListener {
override fun onCancelled(snapshot: DatabaseError?) {}
override fun onChildMoved(snapshot: DataSnapshot?, p1: String?) {}
override fun onChildChanged(snapshot: DataSnapshot?, p1: String?) {
}
override fun onChildAdded(snapshot: DataSnapshot?, p1: String?) {
// childs added
}
override fun onChildRemoved(snapshot: DataSnapshot?) {
}
}
只需將一些日志放入覆蓋的函數中,您就會看到該操作
我建議更改您的Firebase結構,如下所示:
data
節點中擁有的每個用戶(或項目)添加特定的唯一ID。 舉個例子:
如您在圖片中看到的,每個用戶都有一個特定的ID。 Firebase為每個用戶提供一個唯一的ID,您可以使用String userId= user.getUid();
獲得該ID String userId= user.getUid();
。
您還可以創建唯一的id,並使用String key = Database.child("users").push().getKey();
來獲取它們String key = Database.child("users").push().getKey();
(不建議用於用戶標識)
如果你想讀數據時,你的結構,我建議閱讀此 。
還請閱讀此內容 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.