我正在尝试通过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();
}
}
答案 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");
}
}