为什么无法从Firestore DocumentSnapshot中获取Int类型?

时间:2019-07-07 07:09:56

标签: android firebase kotlin google-cloud-firestore

除了Int之外,我都可以从Firestore DocumentSnapshot中获取任何类型:

enter image description here

这是为什么?

2 个答案:

答案 0 :(得分:1)

documentation中可以看到,Cloud Firestore的整数类型值是64位带符号的,这意味着您需要很长的JVM来保存它,而不会丢失数据。如果确实必须将整数存储为JVM int类型,则应将从getLong()获得的值强制转换为int。

答案 1 :(得分:0)

使用kotlin setattr(Object, 'propertyname', "new value") 类可以

person.javaClass
     .getMethod("setName", String::class.java)
     .invoke(person, "new value")