检查Firebase数据库中存在的所有节点中的特定值

时间:2019-02-04 14:07:03

标签: java android firebase firebase-realtime-database

enter image description here

我的FirebaseDatabase中有这种结构。我想检查数据库中的任何节点中是否存在值key的{​​{1}}。如果存在,那么我应该能够获得存在该值9028571487的那个特定节点的键mess的值。我正在使用此代码:

9028571487

如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您的代码看起来不错,除了您根据phone属性对用户进行排序,并且将名称传递给equalTo()方法。要解决此问题,请将相应的电话传递给equalTo()方法,并命名。

Query query=ref.orderByChild("phone").equalTo(phone);

编辑:

如果甚至没有调用您的onDataChange()方法,则您可能没有足够的权限。使用以下代码行对此进行检查:

@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
    Log.d(TAG, databaseError.getMessage()); //Don't ignore errors!
}