Android : com.google.firebase.database.DatabaseException: Can't convert object of type java.lang.String

huangapple 未分类评论45阅读模式
英文:

Android : com.google.firebase.database.DatabaseException: Can't convert object of type java.lang.String

问题

private void fetchData(DataSnapshot dataSnapshot) {
    spacecrafts.clear();
    
    for (DataSnapshot ds : dataSnapshot.getChildren()) {
        Spacecraft spacecraft = ds.getValue(Spacecraft.class);
        spacecrafts.add(spacecraft);
    }
}

Spacecraft spacecraft = ds.getValue(Spacecraft.class); 此行代码返回以下错误

> com.google.firebase.database.DatabaseException: 无法将类型为 java.lang.String 的对象转换为类型 lk.magesty.covidnewssrilanka.m_Model.Spacecraft

有人知道解决方法吗?

Spacecraft.java 文件

package lk.magesty.covidnewssrilanka.m_Model;

public class Spacecraft {
    String name, propellant, description;

    public Spacecraft() {
    }

    public String getName() {
        return name;
    }

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

    public String getPropellant() {
        return propellant;
    }

    public void setPropellant(String propellant) {
        this.propellant = propellant;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }
}
英文:
private void fetchData(DataSnapshot dataSnapshot)
{
    spacecrafts.clear();

    for (DataSnapshot ds : dataSnapshot.getChildren())
    {
        Spacecraft spacecraft=ds.getValue(Spacecraft.class);
        spacecrafts.add(spacecraft);
    }
}

Spacecraft spacecraft=ds.getValue(Spacecraft.class); This line returns below error

> com.google.firebase.database.DatabaseException: Can't convert object
> of type java.lang.String to type
> lk.magesty.covidnewssrilanka.m_Model.Spacecraft

Anyone know a solution for this ?

Spacecraft.java file

package lk.magesty.covidnewssrilanka.m_Model;

public class Spacecraft {
    String name,propellant,description;


    public Spacecraft(){
    }

    public String getName() {
        return name;
    }

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

    public String getPropellant() {
        return propellant;
    }

    public void setPropellant(String propellant) {
        this.propellant = propellant;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }
}

huangapple
  • 本文由 发表于 2020年3月16日 02:41:34
  • 转载请务必保留本文链接:https://java.coder-hub.com/60696385.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定