私は新しいアンドロイドの学習者ですので、ドキュメントで見つけることができないものは私にはありません。ここで私のユーザー作成コードですFirebaseの名前、ユーザー名などで新しいユーザーを作成します
mAuth.createUserWithEmailAndPassword(email,password)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful()){
//Successfully Registered
Toast.makeText(RegisterActivity.this, "Registration Successful", Toast.LENGTH_SHORT).show();
}else {
//Error occurred during registration
Toast.makeText(RegisterActivity.this, "Registration Unsuccessful", Toast.LENGTH_SHORT).show();
try {
throw task.getException();
} catch(FirebaseAuthWeakPasswordException e) {
editTextPassword.setError(e.getMessage());
editTextPassword.requestFocus();
}catch(FirebaseAuthUserCollisionException | FirebaseAuthInvalidCredentialsException e) {
editTextEmail.setError(e.getMessage());
editTextEmail.requestFocus();
} catch(Exception e) {
Log.e(RegisterActivity.class.getName(), e.getMessage());
}
}
progressDialog.dismiss();
}
});
これは、ユーザーを作成するために2つのパラメータ(電子メールとパスワード)しか必要としません。より多くのフィールドを持つユーザーを作成するには、どのようなアプローチを取るべきですか。
さらに、ユーザーのログインステータスを確認するためにFirebaseAuth.AuthStateListener()
を追加しました。しかし、私がfirebaseAuth.getCurrentUser().getDisplayName()
を呼び出すと、正常にユーザーがログインした後にnull
が返されます。名前を使用してユーザーを作成するにはどうすればfirebaseAuth.getCurrentUser().getDisplayName()
で取得できますか。
は、あなたがしようとしたことがあり、 https://firebase.google.com/docs/auth/android/manage- users#update_a_users_profile – srijanshukla
@srijanshuklaドキュメントリンクを提供してくれてありがとう。実際に私は正しいアプローチを知らなかった。 – Sp4Rx
どちらの人がこれら2つの回答の中で良い習慣であるか教えていただけますか? – Sp4Rx