我对此有3个问题:
FirebaseAuth.getInstance().getUid()
根据规范,getInstance()返回FirebaseAuth的实例 类,但getUid在此类中不起作用。但这有效。怎么样?
如果这是新用户,似乎getUid会生成唯一ID,但是 没有写在规范中。该功能如何工作?
谢谢, 亚历克斯
答案 0 :(得分:1)
返回身份验证提供者指定的用户标识符。 例如,如果此对象对应于Google用户,则返回 Google用户ID。对于电话号码帐户,UID为 标准化的E.164格式的电话号码。
何时引发异常或返回null?
这是在单例内部和方法getUid()
中处理的,我找不到有关抛出的任何文档
要使getUid()
正常工作,您需要先让当前用户登录才能获取ID
FirebaseAuth.getInstance().getCurrentUser().getUid();
您可以通过首先检查当前用户是否为!= null或仅使用AuthListener对其进行检查来防止null
FirebaseAuth currentUser = FirebaseAuth.getInstance().getCurrentUser();
if(currentUser != null)
String uid = currentUser.getUid();