【发布时间】:2019-08-01 16:02:06
【问题描述】:
我想创建一个如下所示的 Firestore 模型:
attendance_log (root collection)
|
|--- 001 (document ID)
| |
| |--- date : 20190310
| |--- time : 1025
| |--- subject : "Android Programming"
| |--- present : {"MCA01", "MCA03", "MCA04"}
| |--- absent : {"MCA02, "MCA05"}
我可以通过在 Map 中传递值来存储日期、时间和主题,如下所示:
Map<String, Object> attend = new HashMap<>();
attend.put("date", d) ;
attend.put("time", t) ;
attend.put("subject", subject) ;
db.collection("attendance_log")
.document(docID)
.set(attend)
.addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid){
Toast.makeText(TakeAttendance.this,"Attendance added sucessfully" , Toast.LENGTH_LONG).show();
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Snackbar.make(findViewById(R.id.cdlayout) ,"Something went wrong!", Snackbar.LENGTH_LONG).show();
}
});
但是传递数组会产生错误
java.lang.IllegalArgumentException: Could not serialize object. Serializing Arrays is not supported, please use Lists instead
【问题讨论】:
-
认真的吗? --->>>> "不支持序列化数组,请改用列表"
-
你的主题变量里面有什么?它应该是 Object 而不是 array[]
标签: android arrays list google-cloud-firestore