在不'true'的情况下检索 Firebase 数据库值



这是我如何插入值到我的Firebase实时数据库:

driverRef = FirebaseDatabase.getInstance().getReference().child("User").child("Bus").child(driverFoundId).child("Students").child(userId);
driverRef.setValue(true);

这就是我从数据库中获取值的方式:

driverId= FirebaseAuth.getInstance().getCurrentUser().getUid();
assignedStudentRef = FirebaseDatabase.getInstance().getReference().child("User").child("Bus").child(driverId).child("Students");
assignedStudentListener =assignedStudentRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot ) {
if (snapshot.exists()){

studentId = snapshot.getValue().toString();

Map<String, Object> map = (Map<String, Object>) snapshot.getValue();
studentId = map.toString();
Toast.makeText(DriverMapAct.this," "+studentId, Toast.LENGTH_SHORT).show();
getAssignedStudentPickupLocation();
}
}
}    

因为我之前给setValue (true)添加值到数据库。检索数据时如何删除true ?

如果下面一行代码可以很好地添加数据:

driverRef = FirebaseDatabase.getInstance().getReference()
.child("User")
.child("Bus")
.child(driverFoundId)
.child("Students")
.child(userId);
driverRef.setValue(true);

要删除完全相同的值,请使用DatabaseReference#removeValue()方法:

driverRef.removeValue();

请注意,这也是一个异步操作。因此,您可以考虑附加一个侦听器,以查看是否出现问题。

最新更新