Fai*_*med 10 android kotlin firebase firebase-realtime-database kotlin-android-extensions
我有我的kotlin课程
class Center : Serializable {
var active: Boolean? = null
var address: String? = null
var isJobAccessGranted: Boolean? = null
}
Run Code Online (Sandbox Code Playgroud)
这是我如何获得价值
//from java class
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
centerMap.put(dataSnapshot.getKey(), dataSnapshot.getValue(Center.class));
}
Run Code Online (Sandbox Code Playgroud)
但问题是我active没有任何问题得到了领域的价值.但是isJobAccessGranted布尔字段始终保持为空.我已经测试了一些其他布尔删除is前缀,工作正常.当我使用isActive或时,我没有得到布尔值isJobAccessGranted.任何人都可以解释我为什么面对这个问题.#AskFirebase
如注释中所述,Kotlin您应该@field:JvmField为Boolean类中的每个字段添加内容,因为当Kotlin转换为Java它时会生成setter,而JSON解析器无法解析该名称。和@field:JvmField批注覆盖此功能,并会有正确的制定者的名称和JSON将被正确解析。
| 归档时间: |
|
| 查看次数: |
726 次 |
| 最近记录: |