Я пытаюсь записать данные в упражнении, а затем прочитать его в другом упражнении.Моя письменная часть работает.Для моей части чтения я пытаюсь использовать getValue с параметром класса, который я написал.Но я продолжаю получать эту ошибку:
com.google.firebase.database.DatabaseException: Class ozhan.climb.MainActivity $ Пользователь не определяет конструктор без аргументов.Если вы используете ProGuard, убедитесь, что эти конструкторы не удалены.
Мой класс, который использовался в getValue () :
class User {
public String Server,
NeededRole,
Role,
SummonerName;
User() {}
public String get_Server() {
return Server;
}
public String get_NeededRole() {
return NeededRole;
}
public String get_Role() {
return Role;
}
public String get_SummonerName() {
return SummonerName;
}
}
и здеськод, который должен получить данные:
public void getUserData(){
final TextView tv_sumName = findViewById(R.id.tv_sumName),
tv_neededRole = findViewById(R.id.tv_neededrole),
tv_userRole = findViewById(R.id.tv_userrole),
tv_server = findViewById(R.id.tv_server);
final String uid = Objects.requireNonNull(mAuth.getCurrentUser()).getUid();
DatabaseReference usersDataRef = databaseRef.child("Users").child(uid);
usersDataRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
User u = dataSnapshot.getValue(User.class);
if (u != null) {
tv_server.setText(u.Server);
tv_neededRole.setText(u.NeededRole);
tv_userRole.setText(u.Role);
tv_sumName.setText(u.SummonerName);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}