Tap*_*nHP 4 android firebase firebase-authentication
我是Firebase的新用户,我正在尝试将Firebase Auth api连接到我的应用程序中,我已经关注了来自官方网站的更新文档的文档,所有工作都正常.
我已经成功完成了SignIn,在我的仪表板中,我登录后获得了所有用户.
我的问题是我对从Firebase返回的各种ID感到困惑
代码如下:
for (UserInfo profile : user.getProviderData()) {
// Id of the provider (ex: google.com)
String providerId = profile.getProviderId();
//if Id of the provider is firebase it means we have successfully get back data after saving in firebbase hence we continue to app
if(providerId.equals("firebase")) {
// UID specific to the provider
Other.SavePref(this, "LoginToken", profile.getUid());
// Name, email address, and profile photo Url
String name = profile.getDisplayName();
String email = profile.getEmail();
Uri photoUrl = profile.getPhotoUrl();
Log.e("userinfo", " :: " + profile.getUid()+ " :: " + name + " :: " + email + " :: " + photoUrl);
}
};
Run Code Online (Sandbox Code Playgroud)
如上面的代码我只检查providerId是否是firebase然后我存储信息,但如果我不这样做,它会给我数据两次
如果我使用这个方法,我有两个userIds:profile.getUid(),我只是想知道哪一个是唯一的?并且,我应该使用?
有人可以提出一种方法,在申请方成功登录后该怎么做,这将是非常有帮助的..
用户可以使用多个提供商登录.每个提供程序为该用户生成自己的唯一ID.您可以在每个提供商的用户信息下访问这些内容.
除此之外,Firebase身份验证还会为用户生成自己的唯一ID.无论用户使用哪个提供商登录,他们最终都会使用相同的UID.你可以在下面找到这个FirebaseUser.getUid().
为了识别用户,您通常会使用from中的值FirebaseUser.getUid(),所以在您的代码段中:user.getUid().
| 归档时间: |
|
| 查看次数: |
2350 次 |
| 最近记录: |