Com*_*ace 6 java firebase google-cloud-firestore
在 Firebase 实时数据库中,支持使用 GenericTypeIndicator 反序列化对象。有人可以阐明如何对 Firestore 做同样的事情吗?
我有一个文档快照,我想将其转换为参数化的 POJO。
这是我尝试这样做时抛出的错误
java.lang.RuntimeException: Could not deserialize object. Class com.thesportsbeing.thesportsbeing.screens.festadmin.eventslist.eventadmin.scoring.MatchScore has generic type parameters, please use GenericTypeIndicator instead.
Run Code Online (Sandbox Code Playgroud)
问题是 firestore 包中没有 GenericTypeIndicator,它存在于 realtime-database 包中。任何解决方法?或者把事情做好的东西会很棒。
MyClass 与此类似
public class MyClass<R extends SomeAbstractClass> {
R someClassWhichExtendsAboveAbstractClass;
}
Run Code Online (Sandbox Code Playgroud)
小智 3
以下是对该问题和解决方法的讨论: https://github.com/firebase/firebase-android-sdk/issues/222
最简单的方法是声明泛型类的子类:
class MyNonGeneric extends MyClass<R> {}
// Usage
snapshot.toObject(MyNonGeneric.class);
Run Code Online (Sandbox Code Playgroud)
或者需要分别获取 POJO 的每个顶级属性并进行转换。
| 归档时间: |
|
| 查看次数: |
423 次 |
| 最近记录: |