Tôi sử dụng Firebase Auth trên Android.Hồ sơ của FirebaseUser không được cập nhật
luồng đăng nhập của tôi hoạt động tốt nhưng tôi không thể cập nhật Tên truy nhập & profileUrl ngay sau đó.
public void test() {
String username = "test username";
Uri avatarUri = Uri.parse("http://www.pixelstalk.net/wp-content/uploads/2016/08/Wonderful-Random-Background.jpg");
UserProfileChangeRequest.Builder builder = new UserProfileChangeRequest.Builder();
builder.setDisplayName(username);
builder.setPhotoUri(avatarUri);
Log.d("UPDATE PROFILE", "user exists=" + (firebaseAuth.getCurrentUser() != null ? "YES" : "NO"));
Log.d("UPDATE PROFILE", "user anonymous=" + (firebaseAuth.getCurrentUser().isAnonymous() ? "YES" : "NO"));
firebaseAuth.getCurrentUser().updateProfile(builder.build()).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
if (firebaseAuth.getCurrentUser().getDisplayName() != null) {
Log.d("UPDATE PROFILE", "username=" + firebaseAuth.getCurrentUser().getDisplayName());
} else {
Log.d("UPDATE PROFILE", "username=NULL");
}
if (firebaseAuth.getCurrentUser().getPhotoUrl() != null) {
Log.d("UPDATE PROFILE", "photoUrl=" + firebaseAuth.getCurrentUser().getPhotoUrl().toString());
} else {
Log.d("UPDATE PROFILE", "photoUrl=NULL");
}
} else {
Log.e("UPDATE PROFILE", task.getException().getMessage());
}
}
});
}
Tôi đã thử các phương pháp thử nghiệm trên và đây là kết quả của tôi
CẬP NHẬT HỒ SƠ: người dùng tồn tại = YES
CẬP NHẬT HỒ SƠ: người dùng nặc danh = NO
CẬP NHẬT HỒ SƠ: username = NULL
HỒ SƠ CẬP NHẬT: photoUrl = NULL
Tôi không hiểu tại sao CurrentUser của tôi không được cập nhật ngay cả với một "isSuccessful()" Kết quả
Tôi đã làm việc tốt trước đó, nhưng sau đó tôi bắt đầu nhận được vấn đề đó .. Nếu bạn đăng xuất và một lần nữa, nó thường lấp đầy nó mặc dù ... Nó dường như không cập nhật ngay lập tức vì một lý do nào đó. –
@AubtinSamai Có, Nó không cập nhật ngay lập tức –
Tôi hy vọng họ sẽ sửa chữa nó càng sớm càng tốt – Kyso84