[英]How to get the key of a pushed value
在 Android 上的 Firebase 實時數據庫中,我想檢索此 ID“-Mb1sSv-FCNr9ElxZIwN”。
databaseReference = FirebaseDatabase.getInstance().getReference().child("Registration Data1");
mDBListener = databaseReference.orderByKey().limitToLast(1).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
mTeachers.clear();
for (DataSnapshot teacherSnapshot : dataSnapshot.getChildren()) {
Data DB = teacherSnapshot.getValue(Data.class);
DB.setKey(teacherSnapshot.getKey());
mTeachers.add(DB);
}
mAdapter.notifyDataSetChanged();
mProgressBar.setVisibility(View.GONE);
}
在我看來, KAsr... dhz1
是來自身份驗證過程的用戶 ID。 如果是這樣,該 UID 也應添加到您的參考中。 所以為了能夠得到這個id“-Mb1sSv-FCNr9ElxZIwN”,請更改以下參考:
databaseReference = FirebaseDatabase.getInstance().getReference().child("Registration Data1");
至:
String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
databaseReference = FirebaseDatabase.getInstance().getReference().child("Registration Data1").child(uid);
意思是:
DB.setKey(teacherSnapshot.getKey());
將上述密鑰設置為“DB”object。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.