如何检索使用 Firebase 登录的 Facebook 个人资料的真实姓名(姓名)?



如何检索使用 Firebase 身份验证登录的 Facebook 个人资料的真实名字和姓氏?

mAuth = FirebaseAuth.getInstance();
fullNameTextView.setText(mAuth.getCurrentUser().getDisplayName());
userNameTextView.setText(mAuth.getCurrentUser().getDisplayName());        
Picasso.get().load(mAuth.getCurrentUser().getPhotoUrl()).placeholder(R.drawable.ic_action_profile).into(profilePictureImageView);

该信息在FirebaseUser对象中不存在。要解决此问题,您应该首先获取提供商列表并找到您感兴趣的提供商。因此,请检查以下代码行:

FirebaseUser firebaseUser = FirebaseAuth.getInstance().getCurrentUser();
List<? extends UserInfo> userInfoList = firebaseUser.getProviderData();
for (UserInfo userInfo : userInfoList) {
String providerId = userInfo.getProviderId();
if (providerId.equals(FacebookAuthProvider.PROVIDER_ID)) {
String name = userInfo.getDisplayName();
Log.d("TAG", name);
}
}

logcat 中的结果将是已使用 Facebook 进行身份验证的用户的名称。

相关内容

最新更新