store 存取数据数组对象_如何从Firestore文档中获取对象数组

我在Firestore中有一个如下所示的数据结构:

父POJO是:public class Restaurant {

private Double distance;

private GeoPoint geoPoint;

private int distributionType;

private List dailyHours;

public Restaurant(Double distance, GeoPoint geoPoint, int distributionType, List dailyHours) {

this.distance = distance;

this.geoPoint = restaurantLogo;

this.restaurantDescription = distributionType;

this.dailyHours = dailyHours;

}

// Getter & Setter (excluded most for the sake of clarity

public List getDailyHours() {

return dailyHours;

}

public void setDailyHours(List dailyHours) {

this.dailyHours = dailyHours;

}

}

然后是DailyHours POJO:public final class DailyHours {

boolean selected;

String thisDay;

int startHour;

int closeHour;

public DailyHours(boolean selected, String thisDay, int startHour, int closeHour) {

this.selected = selected;

this.thisDay = thisDay;

this.startHour = startHour;

this.closeHour = closeHour;

}

// Setter and Getter

}

我如何将它放入一个数组中(其中会有一个数组)?

我正在尝试这样做(其中restaurantArrayList是Restaurant对象的数组):db.collection("database").get().addOnSuccessListener(queryDocumentSnapshots -> {

for (QueryDocumentSnapshot documentSnapshot : queryDocumentSnapshots) {

Restaurant restaurant = documentSnapshot.toObject(Restaurant.class);

restaurantArrayList.add(restaurant);

}

}

并最终得到以下错误:

无法反序列化对象。 类com.eataway.partner.Models.DailyHours未定义无参数构造函数。 如果您正在使用ProGuard,请确保这些构造函数没有被剥离(在字段'daily hours.[0]'中找到)

我想我必须解析对象数组,但我不知道如何做。 请指教。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值