java - Google FireStore 支持的自定义对象有限制吗?

标签 java android firebase google-cloud-firestore

我正在使用 Google FireStore 作为我的 Android 应用程序的后端。该应用程序有一个自定义User类(class)。正如文档所指定的,这个自定义类有一个不带参数的公共(public)构造函数(以及一个带参数的公共(public)构造函数)以及每个变量的 getter。

这些变量之一是 LinkedList<String> 。我可以上传User对象对 FireStore 没有问题,但通过

检索它们

User u = document.toObject(User.class);

导致以下错误,在 logcat 中检测到:

java.lang.IllegalArgumentException: field ase.liongps.utils.User.searches has type java.util.LinkedList, got java.util.ArrayList

我想知道 Google FireStore 在将对象存储在云中时是否可能会改变对象,或者我如何尝试创建本地 User对象导致了这个问题。这个错误目前正在导致我的应用程序崩溃,因此非常欢迎任何建议或意见!

最佳答案

您收到以下错误:

java.lang.IllegalArgumentException: field ase.liongps.utils.User.searches has type java.util.LinkedList, got java.util.ArrayList

由于LinkedListArrayList对象类型不兼容。要解决此问题,请将对象的数据类型从 LinkedList 更改为 ArrayList 并在客户端对项目进行排序。

关于java - Google FireStore 支持的自定义对象有限制吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53416727/

相关文章:

java - LibGdx 拉伸(stretch)/变形像素(例如在像素艺术中)

java - 在java中将视频分割成图像帧

Java创建具有多个对象的类列表

ios - 如何在数组中然后在 TableView 中显示来自 Firebase 的用户昵称(For 循环问题)

firebase - 使用flutter在Cloud Firestore中创建文档

java - 我可以使用 float[] 来保存整数吗?

android - 如何在 Android 运行时根据 dp 或 dip 确定屏幕宽度?

android - flutter - 错误 : Null safety features are disabled for this library

android - PJSIP Android 构建 NDK

ios - Firebase Debug模式不上传日志事件