FirebaseUser에서 Google 계정의 이름과 프로필 사진을 얻으려면 어떻게합니까?사용자 로그인 정보가 null 인 Firebase Auth with Google 로그인
다음은 Google 로그인 및 Firebase 인증 통합에 관한 Firebase의 Android documentation입니다. Google 로그인으로 인증하면 사용자 프로필 정보를 GoogleSignInAccount#getPhotUrl()
및 GoogleSignInAccount#getDisplayName()
에서 가져올 수 있습니다.
account
이 같은 인증 GoogleSignInAccount
객체 어디는 (FirebaseAuth.getInstance().signInWithCredential(account)
와 중포 기지에 로그인 할 수 있습니다하지만 난 중포 기지 측면에서 사용자 프로필 정보를 null 값을 얻을
구글 로그인에서 결과 콜백을 :..
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
if (result.isSuccess()) {
GoogleSignInAccount account = result.getSignInAccount();
account.getEmail(); // Valid email
account.getDisplayName(); // Valid name
account.getPhotoUrl(); // Valid Uri
firebaseAuthWithGoogle(account);
}
구글 로그인에서 + 중포 기지 인증 :
private void firebaseAuthWithGoogle(GoogleSignInAccount account) {
AuthCredential credential = GoogleAuthProvider.getCredential(account.getIdToken(), null);
mAuth.signInWithCredential(credential)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
// Sign in success, update UI with the signed-in user's information
Log.d(TAG, "signInWithCredential:success");
FirebaseUser user = mAuth.getCurrentUser();
user.getEmail(); // Valid email
user.getDisplayName(); // null
user.getPhotoUrl(); // null
}
}
});
}
왜'GoogleSignInAccount' 대신'FirebaseUser' 객체에서 값을 가져와야합니까? –
@AlexMamo [Android 용 FirebaseUI] (https://github.com/firebase/FirebaseUI-Android)와 같은 라이브러리는 Google 로그인 클래스를 제공하지 않으며 FirebaseUser는 프로필 정보를 가져 오는 방법입니다. –