Я пытаюсь создать новые данные пользователя при входе в систему с помощью Facebook (firebase), когда я повторно вхожу в систему, данные в firebase перезапускаются, вы можете, ребята, показать мне способ создания новых данных пользователя при входе в систему с помощью facebook, это мой код (я знаю это неправильно)
private void handleFacebookAccessToken(AccessToken accessToken) {
final AuthCredential authCredential = FacebookAuthProvider.getCredential(accessToken.getToken());
gAuth.signInWithCredential(authCredential)
.addOnSuccessListener(new OnSuccessListener<AuthResult>() {
@Override
public void onSuccess(AuthResult authResult) {
String emailFB = authResult.getUser().getEmail();
String uIdFacebook = authResult.getUser().getUid();
userClass = new User(uIdFacebook, "", emailFB, "", "",
"", "");
FirebaseDatabase.getInstance().getReference("Users")
.child(FirebaseAuth.getInstance().getCurrentUser().getUid())
.setValue(userClass);
Log.d(TAG, "uIdFacebook: "+ uIdFacebook);
Toast.makeText(StartScreen.this, "Welcome "+ emailFB, Toast.LENGTH_SHORT).show();
Intent intent = new Intent(StartScreen.this, UserProfileScreen.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
finish();
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Toast.makeText(StartScreen.this, "ERROR: " +e.getMessage(), Toast.LENGTH_SHORT).show();
}
});
}
FirebaseDatabase.getInstance (). GetReference ("Пользователи") .child (FirebaseAuth.getInstance (). GetCurrentUser (). GetUid ()) .setValue (userClass); здесь я хочу создать новые данные, когда пользователь впервые входит в систему (включая userEmail, userID), и когда я вошел в систему, я могу обновить свою информацию (userName, userBirthDay, ...), но когда я выйду из системы и повторно войду в систему , у данных пользователя есть только userEmail и userID
Что не так с вашим кодом?