如何在Firebase身份验证中检查用户是否通过Facebook登录
我正在尝试确定当前用户是否通过Facebook登录在应用程序中进行了身份验证。我之所以这样做,是因为如果用户是通过Facebook进行身份验证的,那么Signout()应该处理
LoginManager.getInstance().logOut();
但如果通过电子邮件进行身份验证,则
auth.signOut();
我的当前代码是
//sign out method
public void signOut() {
if(auth.getCurrentUser().getProviderId().equals("facebook.com")) {
LoginManager.getInstance().logOut();
auth.signOut();
}
else {
auth.signOut();
}
}
解决方案
您可以这样做:
if (firebaseUser != null) {
for (UserInfo userInfo : firebaseUser.getProviderData()) {
if (userInfo.getProviderId().equals("facebook.com")) {
Log.d("TAG", "User is signed in with Facebook");
}
}
}
相关文章