像这样的数据库
Users
+oagnpangnangpadngn
+psdpgpsdnpgndpsngpndap
+pdgpjdpsgpdsjpgjpsdjpg
--letssupposemyfriendkey <----- I want this key
--name Ahsan
--email [email protected]
现在正如您所看到的,每个用户中有 2 个孩子。
我已经设置了一个点击按钮,当我在编辑文本中输入它时,它会从布局中获取电子邮件。所以主要我想使用我输入的电子邮件来获取该电子邮件的用户密钥。
例如我输入----> [email protected]
现在我如何搜索这封电子邮件的用户,然后获取拥有这封电子邮件的用户的密钥?
我没有使用 Firestore 或 Cloud Functions,因此如果可能,请不要回答我在 Android Studio 中使用 Java(非 Kotlin)使用 Firebase 实时数据库的问题。
您尝试执行的操作需要使用数据库查询。例如,以下是如何查找具有给定“email”值的所有用户:
DatabaseReference usersRef = FirebaseDatabase.getInstance().getReference("Users");
Query friendQuery = usersRef.orderByChild("email").equalTo("[email protected]");
friendQuery.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot friendSnapshot: dataSnapshot.getChildren()) {
System.out.println(friendSnapshot.getKey()); // letssupposemyfriendkey
System.out.println(friendSnapshot.child("name").getValue(String.class)); // Ahsan
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
throw databaseError.toException();
}
}
我强烈建议您花一些时间阅读有关排序和过滤的Firebase 文档,参加面向 Android 开发人员的Firebase 代码实验室,并阅读有关 Firebase 查询的先前问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句