首页 > 解决方案 > 我的应用程序 logcat 中的错误如果您使用 ProGuard,请确保未剥离这些构造函数

问题描述

错误日志猫

com.google.firebase.database.DatabaseException:com.team_blqa.jam3ti.User 类未定义无参数构造函数。如果您使用 ProGuard,请确保未剥离这些构造函数。在 com.google.firebase.database.core.utilities.encoding.CustomClassMapper$BeanMapper.deserialize(CustomClassMapper.java:570) 在 com.google.firebase.database.core.utilities.encoding.CustomClassMapper$BeanMapper.deserialize(CustomClassMapper. java:563) 在 com.google.firebase.database.core.utilities.encoding.CustomClassMapper.convertBean(CustomClassMapper.java:433) 在 com.google.firebase.database.core.utilities.encoding.CustomClassMapper.deserializeToClass(CustomClassMapper. java:232)在 com.google.firebase.database.DataSnapshot 的 com.google.firebase.database.core.utilities.encoding.CustomClassMapper.convertToCustomClass(CustomClassMapper.java:80)。

SingUp.java

  private void add_user(){
        FIRE_DB.child(USER_ID).addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                User user = dataSnapshot.getValue(User.class);                 //This error
                if(user==null){
                    Toast.makeText(getApplicationContext(),"لايوجد بيانات مدخلة",Toast.LENGTH_SHORT).show();
                }


                for(DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()){
                    int i =1;
                    User user1 = dataSnapshot.getValue(User.class);
                    Log.i("--DISPLAY DATA : "+i, user1.getName()+" : "+user1.getEmail()+":"+user1.getYear()+":"+user1.getAge()+":"+user1.getAddress()+":"+user1.getColloge());
                    i++;
                }

            }

            @Override
            public void onCancelled(DatabaseError databaseError) {
                Toast.makeText(getApplicationContext(),databaseError.toException().toString(),Toast.LENGTH_SHORT).show();
            }
        });
    }

用户.java

public class User {
    private String name;
    private String email;
    private String year;
    private String age;
    private String Address;
    private String colloge;



    public User(String name,String email,String year, String age, String Address, String colloge) {
        this.name = name;
        this.email = email;
        this.year = year;
        this.age = age;
        this.Address=Address;
        this.colloge=colloge;

    }



    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }


    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getAddress() {
        return Address;
    }

    public void setAddress(String address) {
        Address = address;
    }

    public String getColloge() {
        return colloge;
    }

    public void setColloge(String colloge) {
        this.colloge = colloge;
    }

    public String getYear() {
        return year;
    }

    public void setYear(String year) {
        this.year = year;
    }
}

标签: javafirebaseandroid-studio

解决方案


推荐阅读