【问题标题】:It is possible to upload List<Class> to firebase Realtime database可以将 List<Class> 上传到 firebase 实时数据库
【发布时间】:2022-01-29 16:14:57
【问题描述】:

我有一个名为 Questions 的简单类,其中包含:

public class Questions {
String question,correctAns;
String[] incorretAns;

public Questions() {
}

public Questions(String question, String correctAns, String[] incorretAns) {
    this.question = question;
    this.correctAns = correctAns;
    this.incorretAns = incorretAns;
}

public String getQuestion() {
    return question;
}

public void setQuestion(String question) {
    this.question = question;
}

public String getCorrectAns() {
    return correctAns;
}

public void setCorrectAns(String correctAns) {
    this.correctAns = correctAns;
}

public String[] getIncorretAns() {
    return incorretAns;
}

public void setIncorretAns(String[] incorretAns) {
    this.incorretAns = incorretAns;
}

}

我想将它作为List&lt;Questions&gt; questionsList 列表上传到firebase 实时数据库,可以上传!。

我已尝试上传,但 firebase 实时数据库出现异常:如下所示:

FirebaseDatabase.getInstance().getReference().child("Questions")
                        .child("randomID")
                        .setValue(questionsList);

它给出了这样的异常:

com.google.firebase.database.DatabaseException: Serializing Arrays is not supported, please 
use Lists instead

还有其他方法可以上传此类数据,我们将不胜感激!

【问题讨论】:

  • 您的Question 类是否扩展或实现Serializable
  • @SambhavKhandelwal 不,它没有扩展或实现Serializable
  • 可以分享Questions类的完整代码吗?
  • @SujalKumar 我添加了Questions 类的完整代码,现在您可以查看
  • @SujalKumar 我已经做了一些更改,现在您可以查看

标签: java android firebase-realtime-database


【解决方案1】:

你使用了String[] incorretAns;,这就是你得到这个期望的原因:

com.google.firebase.database.DatabaseException: Serializing Arrays is not 
supported, please 
use Lists instead

因此,您可以单独使用选项而不是 String[] incorretAns,例如:

String OptionA, OptionB, OptionC //or whatever you like

那么您将不会收到任何错误,希望对您有所帮助!

【讨论】:

  • 好像可以了,谢谢!
猜你喜欢
  • 2019-06-07
  • 2021-01-31
  • 2018-12-05
  • 1970-01-01
  • 2018-11-22
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多