Вопрос не очень понятен. От какого действия вы надеетесь получить эту информацию?
Создайте действие, чтобы получить информацию о пользователе. Пример: - UserInformationActivity
В java-файле вы можете создать узел базы данных firebase для хранения этой информации
Ссылка на базу данных:
DatabaseReference userinfo=FirebaseDatabase.getInstance().getReference().child("User Info").child(FirebaseAuth.getInstance().getCureentUser().getUid());
Использовать Hashmap
чтобы вставить данные в узел.
Hashmap hash = new Hashmap();
hash.put("Username", username);
hash.put("Email", email);
userinfo.updateChildren(hash);
А в вашем классе VerifyPhoneActivity
, когда вы успешно аутентифицировали пользователя, проверьте, существует ли снимок данных этой ссылки в базе данных firebase. Обновите свой код в классе VerifyPhoneActivity
следующим образом:
final DatabaseReference us=FirebaseDatabase.getInstance().getReference().child("User Info").child(FirebaseAuth.getInstance().getCurrentUser.getUid())
И обновите свой метод signInwithCredential () следующим образом:
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if(user!=null){
us.addValueEventlistner(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()){
Intent intent = new Intent(VerifyPhoneActivity.this, DriverHome.class);
startActivity(intent);
finish(); }
else{
Intent gotoUserInfo=new Intent(VerifyPhoneActivity.this,UserInformationActivity.class);
startActivity(gotoUserInfo);
finish();
} }
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
else {
Intent intent = new Intent(VerifyPhoneActivity.this, StartActivity.class);
startActivity(intent);
finish();
}
Надеюсь, это поможет. Спасибо!