Как создать новую учетную запись, когда я уже вошел в систему

У меня есть администратор, который может создать новую учетную запись для другого пользователя. Я написал этот код. Это действительно сработало в первый раз, потом не сработало. Думаю это из-за user_ID будет то же самое. Если это по этой причине, как я могу создать новую учетную запись, даже если я вошел в систему?

Мой код:

mAuth.createUserWithEmailAndPassword(email,password)
   .addOnCompleteListener(
        add_accountActivity.this,
        new OnCompleteListener<AuthResult>() {
           @Override
           public void onComplete(@NonNull Task<AuthResult> task) {
                if (!task.isSuccessful()){
                }else{
                   String user_id = mAuth.getCurrentUser().getUid();
                  // add user Id to database
                    DatabaseReference current_user_db 
                    =FirebaseDatabase.getInstance().getReference()
                   .child("account").child(user_id);
                   current_user_db.setValue(true);
                }

Вы должны выйти из системы текущего пользователя, тогда вы сможете зарегистрировать нового пользователя, так как когда вы зарегистрируетесь, то после успеха вы войдете в систему как пользователь firebase

Rahul Chandrabhan 15.03.2018 05:05

При создании новой учетной записи этот новый пользователь автоматически входит в систему. Это означает, что существующий текущий пользователь выходит из системы. Это работает по назначению, поскольку SDK Firebase Authentication для Android предназначен только для входа текущего пользователя. Также см. Мой ответ здесь: stackoverflow.com/questions/37517208/… (и обходной путь, при котором делает позволяет создать нового пользователя, не подписывая в конце концов текущего).

Frank van Puffelen 15.03.2018 05:18

Чтобы этого избежать, попробуйте использовать Firebase Admin SDK на сервере (или используйте облачные функции), чтобы сгенерировать столько пользователей, сколько вы хотите, без выхода из системы.

Charles Crete 15.03.2018 05:19
0
3
43
0

Другие вопросы по теме