java - 我的应用程序 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;
}
}
解决方案
推荐阅读
- php - 在页面模板中调用帖子标题的第一个单词
- ruby-on-rails - 如何在 Rails 模型中获取当前用户
- windows-installer - Visual Studio 生成的 msi 与 gpo:将不会安装此广告应用程序,因为它可能不安全
- npm - 如何为 nunjucks 设置 baseurl
- c# - 基于实体 Frameowrk 的应用程序在从 SSMS 附加和分离后无法打开本地 DB (.mdf)
- python-3.x - Scrapy爬虫类跳过链接并且不返回响应正文
- rstudio - 如何强制 knitr 直接输入 tikzpicture?
- python-3.x - How can I list all non-standard modules used by a Python program?
- vba - 将文件移动到文件夹
- google-apps-script - google sheet UiApi到htmlservice脚本文件上传