Могу ли я разрешить пользователю создавать пользовательское имя пользователя во время регистрации, если они используют вход в Google / Facebook? - PullRequest
0 голосов
/ 14 сентября 2018

Я только что реализовал Firebase authUI в приложении, но я бы хотел, чтобы мои пользователи могли иметь имена пользователей / отображаемые имена, которые не являются их именами в этих учетных записях, не вынуждая их измениться позже. Если возможно, где и как мне это реализовать?

Ответы [ 2 ]

0 голосов
/ 14 сентября 2018

Да, вы можете. Как отметил @ Gastón Saillén в своем ответе, при первом входе в систему вы получаете данные от поставщика регистрации, но как только вы вошли в систему с помощью Firebase, вы можете установить пользовательское имя пользователя, обновив существующее, используя UserProfileChangeRequest .Builder.setDisplayName () метод, подобный этому:

FirebaseUser firebaseUser = FirebaseAuth.getInstance().getCurrentUser();
UserProfileChangeRequest userProfileChangeRequest = new UserProfileChangeRequest.Builder()
        .setDisplayName("aedgar777")
        .build();

firebaseUser.updateProfile(userProfileChangeRequest).addOnCompleteListener(new OnCompleteListener<Void>() {
    @Override
    public void onComplete(@NonNull Task<Void> task) {
        if (task.isSuccessful()) {
            Log.d(TAG, "aedgar777 updated!");
        }
    }
});
0 голосов
/ 14 сентября 2018

По умолчанию, войдя в систему с помощью Google или Facebook, вы можете назначить этому пользователю его имя из службы, которая использует (google или facebook), но с помощью FirebaseAuth после входа в систему вы можете отобразить любой вид диалогового окна, запрашивающего пользователя.заполнить определенный профиль данными, именем, датой рождения и т. д., а затем просто сохранить эти данные внутри идентификатора пользователя, который создается при входе в Google-Facebook, и отображать эти данные пользователю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...