我想從Android獲取Firebase數據庫中添加的最後一個節點中的項目。您可以在下面的圖片中看到我不確定如何獲取特定節點,因爲唯一密鑰是由Firebase創建的。如何引用自動創建的節點和孩子裏面?非常感謝獲取Firebase數據庫中的最後一個節點Android
的最後一個節點
我想從Android獲取Firebase數據庫中添加的最後一個節點中的項目。您可以在下面的圖片中看到我不確定如何獲取特定節點,因爲唯一密鑰是由Firebase創建的。如何引用自動創建的節點和孩子裏面?非常感謝獲取Firebase數據庫中的最後一個節點Android
的最後一個節點
試試這個:
DatabaseReference databaseReference = Firebase.getInstance().getReference();
Query lastQuery = databaseReference.child("mp").orderByKey().limitToLast(1);
lastQuery.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String message = dataSnapshot.child("message").getValue().toString();
}
@Override
public void onCancelled(DatabaseError databaseError) {
//Handle possible errors.
}
});
希望這有助於!
我更喜歡通過對象編寫和檢索數據。 MyObject是POJO。
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot data : dataSnapshot.getChildren()) {
MyObject myObject = data.getValue(MyObject.class);
Log.i(TAG, data.getKey() + " = " + myObject.toString());
}
}
試試這個它會工作
數據庫參考數據庫;
db=FirebaseDatabase.getInstance().getReference().child("mp");
Query query = db.orderByKey().limitToLast(1);
query.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot child: dataSnapshot.getChildren()) {
Log.d("User key", child.getKey());
Log.d("User val", child.child("message").getValue().toString());
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}``
});;
這裏是火力數據庫https://androidheight.blogspot.in/2017/04/firebase-reatime-database.html – Prabhakar