好吧,我可以FirebaseUser
访问当前FirebaseAuth.getInstance().getCurrentUser()
个对象,然后我可以调用getPhotoUrl()
或getDisplayName()
方法。
问题是用户UUID,如何访问其他用户的对象并调用这些方法?
PS:在android上
答案 0 :(得分:0)
执行此操作的常用方法是将有关用户的可共享信息存储在Firebase数据库中。
firebase.com上的文档就是一个很好的例子。请参阅https://www.firebase.com/docs/android/guide/user-auth.html#section-storing新Firebase更改的方法仍然相同,但您需要稍微按下代码。
我将添加一条说明,我们需要将此示例添加到新的Firebase文档中。
答案 1 :(得分:0)
FirebaseUser有一组固定的基本属性 - 一个唯一的ID,一个主电子邮件地址,一个名称和一个照片网址 - 存储在一个单独的项目的用户数据库中;用户可以更新这些属性。您无法直接向FirebaseUser对象添加其他属性;相反,您可以将其他属性存储在Firebase实时数据库中。
FirebaseAuth mAuth = FirebaseAuth.getInstance();
mAuth.createUserWithEmailAndPassword("email@example.com", "my pass")
.continueWithTask(new Continuation<AuthResult, Task<Void>> {
@Override
public Task<Void> then(Task<AuthResult> task) {
if (task.isSuccessful()) {
FirebaseUser user = task.getResult().getUser();
DatabaseReference firebaseRef = FirebaseDatabase.getInstance().getReference();
return firebaseRef.child("users").child(user.getUid()).child("phone").setValue("650-253-0000");
} else {
// User creation didn't succeed. Look at the task exception
// to figure out what went wrong
Log.w(TAG, "signInWithEmail", task.getException());
}
}
});