Android 如何向对象firestore中的对象数组添加值
我试图将自定义对象添加到自定义对象内部的数组中, 我的意思是,我在CloudFireStore中保存了对象任务,现在我有几个子任务要保存在任务对象中,但每次我都要添加一个 我尝试了以下代码:Android 如何向对象firestore中的对象数组添加值,android,google-cloud-firestore,Android,Google Cloud Firestore,我试图将自定义对象添加到自定义对象内部的数组中, 我的意思是,我在CloudFireStore中保存了对象任务,现在我有几个子任务要保存在任务对象中,但每次我都要添加一个 我尝试了以下代码: db.collection(Constants.TASKLIST).document(uid) .update("subTasks", FieldValue.arrayUnion(subTask)); 数据结构 这是我的任务对象,任务和子任务是相同的 公共类任务实现可序列化{ private S
db.collection(Constants.TASKLIST).document(uid)
.update("subTasks", FieldValue.arrayUnion(subTask));
数据结构
这是我的任务对象,任务和子任务是相同的
公共类任务实现可序列化{
private String description;
private String deadline;
private ArrayList<Task> subTasks;
public Task(String description, String deadline) {
this.description = description;
this.deadline = deadline;
this.subTasks = new ArrayList<>();
}
public String getDeadline() {
return deadline;
}
public String getDescription() {
return description;
}
public ArrayList<Task> getSubTasks() {
return subTasks;
}
public void setSubTasks(ArrayList<Task> subTasks) {
this.subTasks = subTasks;
}
public Task(String description) {
this.description = description;
}
public Task() {}
私有字符串描述;
私有字符串截止日期;
私有ArrayList子任务;
公共任务(字符串描述、字符串截止日期){
this.description=描述;
this.deadline=截止日期;
this.subTasks=new ArrayList();
}
公共字符串getDeadline(){
归还期限;
}
公共字符串getDescription(){
返回说明;
}
公共ArrayList getSubTasks(){
返回子任务;
}
公共无效设置子任务(ArrayList子任务){
this.subTasks=子任务;
}
公共任务(字符串描述){
this.description=描述;
}
公共任务(){}
}
但它给了我以下错误:
无效数据。不支持的类型:如果我理解正确,您的ArrayList包含Task类型的对象。 Firestore只支持一定数量的数据类型,而这似乎不是其中之一。 是可以保存在firestore数据库中的项目列表
例如,您可以将任务另存为引用,或者简化操作,只需将文档的id另存为数组中的字符串。请编辑问题,以便更具体地说明您要添加的内容。应该有足够的信息,任何人都可以重现准确的情况。请将数据库结构添加为屏幕截图和
子任务的内容。请同时回复@AlexMamoedit post LLL