我目前正在做一个项目,要求我能够从Firestore中提取具有用户特定数据的信息。
此刻,我让应用程序创建了一个用户,并且能够读取特定的表。
我想知道是否有任何方法可以读取特定数据并将其保存到UserID
?
public String UID = FirebaseAuth.getInstance().getCurrentUser().getUid();
此刻我正在使用它来读取用户ID并将其保存到文档中,但是想知道最流行的用户特定数据检索方法是什么吗?
是否可以将文档设置为与用户ID相等并以此方式检索?
我只是想看看是否有多种方法可以做到这一点,什么是最受欢迎的方法。由于某种原因,我发现教程/文档很难获得,因此即使是指向它们的链接也将不胜感激。
谢谢。
答案 0 :(得分:0)
想知道最受欢迎的用户特定数据检索方法是什么吗?
假设您具有如下所示的数据库结构:
Firebase-root
|
--- users
|
--- uid
|
--- uid: "TheUidOfTheUser"
|
--- //other users details
一种推荐方法是像下面的代码行一样使用DocumentReference
:
String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
DocumentReference uidRef = rootRef.collection("users").child(uid);
uidRef.get(/* ... */);
第二种方法是使用Query
,如下所示:
String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
Query query = rootRef.whereEqualTo("uid", uid);
query.get(/* ... */);
其中uid
变量保存要搜索的用户uid的值。