私はGoogleからfirebaseを使用しています。ユーザー認証に問題があります。 facebookでロギングした後、私はAuthStateListenerでFirebaseUserを取得しましたが、このユーザーがFacebook経由でログインしているかどうか、どうやって検出できますか?FirebaseユーザーがFacebook認証を使用してサインインしているかどうかを確認する方法
UPDATE @FrankバンPuffelenは()。GETCURRENTUSER()FirebaseAuth.getInstance言ったように。getProviderId() は "フェイスブック" を返す必要がありますが、私の場合、それは "firebase" を返します。今私はこの動作の理由が何であるかを理解できません。
AuthCredential credential = FacebookAuthProvider.getCredential(facebookToken.getToken());
mAuth.signInWithCredential(credential)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
// If sign in fails, display a message to the user. If sign in succeeds
// the auth state listener will be notified and logic to handle the
// signed in user can be handled in the listener.
if (!task.isSuccessful()) {
}
}
});
とafterthat onCompleteの()メソッドが呼び出される前に、私のAuthStateListenerは、それがあるべきなプロバイダIDは「フェイスブック」ではありませんユーザーを取得します。私はFacebookTokenを得たとき、私はこのような何かを私は何か間違っているのですか?私は公式googleに従ったdocumentation
をチェックしていたGoogleアカウントは「facebook.com」を返しますが、私のアプリは、Facebookのを使用していないように私はそれをテストすることはできません。もしあなたができるなら、それを試してみてください。 –
更新された質問をご覧ください。 – Taldakus