如何在Firebase Auth中检查用户是否通过Facebook登录

时间:2017-12-11 11:44:18

标签: java android facebook firebase

我正在尝试通过Facebook登录确定当前用户是否在应用中进行了身份验证。我想要这样,因为如果用户通过Facebook进行身份验证,那么signOut()应该处理

        LoginManager.getInstance().logOut();

但如果通过电子邮件进行身份验证而非简单

auth.signOut();

我的cuurent代码是

//sign out method
public void signOut() {

    if(auth.getCurrentUser().getProviderId().equals("facebook.com")) {
        LoginManager.getInstance().logOut();
        auth.signOut();
    }
    else {
        auth.signOut();
    }
}

2 个答案:

答案 0 :(得分:1)

这是你可以做到的:

if (firebaseUser != null) {
    for (UserInfo userInfo : firebaseUser.getProviderData()) {
        if (userInfo.getProviderId().equals("facebook.com")) {
            Log.d("TAG", "User is signed in with Facebook");
        }
    }
}

答案 1 :(得分:0)

我希望这会对你有所帮助:

for (UserInfo user:FirebaseAuth.getInstance().getCurrentUser().getProviderData()) {
  if (user.getProviderId().equals("facebook.com")) {
    System.out.println("User is signed in with Facebook");
  } 
}
相关问题