我为每种数据类型创建了类,并尽可能使用它们来读取快照值:
MyClass my = snapshot.getValue(MyClass.class);
在我尝试阅读特定记录之前,一切都很好:
com.google.firebase.database.DatabaseException: Can't convert object of type java.lang.String to type java.lang.Boolean
糟糕。事实证明,另一个客户端错误地将字符串文字"true"
而不是布尔值true
写入此记录的子级。我的许多房产包括这一房都是可选的。是否可以通过注释或其他方式使Firebase仍然读取此对象并忽略不属于预期类型/格式的属性,或者我是否必须处理此异常并删除整个记录?