【发布时间】:2016-10-24 21:44:05
【问题描述】:
我正在创建一个使用 Firebase 身份验证的应用。我的提供商名称为.getProvider(),但 Firebase 已更新,现在我使用的是 FirebaseAuth 和 FirebaseUser,如果我有登录按钮(Google、Facebook、Twitter 和电子邮件和密码)在同一个活动中。
【问题讨论】:
标签: android firebase firebase-authentication
我正在创建一个使用 Firebase 身份验证的应用。我的提供商名称为.getProvider(),但 Firebase 已更新,现在我使用的是 FirebaseAuth 和 FirebaseUser,如果我有登录按钮(Google、Facebook、Twitter 和电子邮件和密码)在同一个活动中。
【问题讨论】:
标签: android firebase firebase-authentication
问题可以通过代码解决——
FirebaseAuth mAuth = FirebaseAuth.getInstance();
FirebaseUser user =mAuth.getCurrentUsers();
String provider = user.getProviders().get(0);
【讨论】:
您可以获取当前登录用户的提供者 ID。它应该类似于下面的代码 sn-p:
mAuthListener = new FirebaseAuth.AuthStateListener() {
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
FirebaseUser user = firebaseAuth.getCurrentUser();
if (user != null) {
Log.d(TAG, "Provider ID: " + user.getProviderId());
}
}
};
这里是 Firebase 类参考文档:https://firebase.google.com/docs/reference/android/com/google/firebase/auth/FirebaseUser.html#getProviderId()
【讨论】: