Android firebase-kotlin-Hashmap类型推断失败

Android firebase-kotlin-Hashmap类型推断失败,android,firebase,firebase-realtime-database,kotlin,Android,Firebase,Firebase Realtime Database,Kotlin,我想使用firebase和Hashmap,并尝试了GenericTypeIndicator,但发现以下错误:类型推断失败 守则: val ref = FirebaseDatabase.getInstance().reference.child("aaa").child(game_id).child("bbbb") ref.addValueEventListener(object : ValueEventListener { override fun onDataChang

我想使用firebase和Hashmap,并尝试了GenericTypeIndicator,但发现以下错误:
类型推断失败

守则:

val ref = FirebaseDatabase.getInstance().reference.child("aaa").child(game_id).child("bbbb")
    ref.addValueEventListener(object : ValueEventListener {
        override fun onDataChange(dataSnapshot: DataSnapshot) {

            val type = object : GenericTypeIndicator<HashMap<String,String>>() {}

            val precios : HashMap<String,String>  = dataSnapshot.getValue(type!!)
            liveData.postValue(precios)

        }

        override fun onCancelled(databaseError: DatabaseError) {

        }
    })
val ref=FirebaseDatabase.getInstance().reference.child(“aaa”).child(游戏id).child(“BBBBBB”)
ref.addValueEventListener(对象:ValueEventListener{
覆盖数据更改(dataSnapshot:dataSnapshot){
val type=object:GenericTypeIndicator(){}
val precios:HashMap=dataSnapshot.getValue(type!!)
liveData.postValue(precios)
}
覆盖已取消(databaseError:databaseError){
}
})

看起来
HashMap
是可选的,请尝试一下:

val type = object : GenericTypeIndicator<HashMap<String,String>?>() {}
val type=object:GenericTypeIndicator(){}

我使用了您的snapcode,我在其中做了更改,因此我传递了此错误

   val precios : HashMap<String,String>  = dataSnapshot.getValue(type)!!
val precios:HashMap=dataSnapshot.getValue(类型)!!
而不是

    val precios : HashMap<String,String>  = dataSnapshot.getValue(type!!)
val precios:HashMap=dataSnapshot.getValue(type!!)
希望这能像帮助我一样帮助其他人,因为其他解决方案对我不起作用

快乐编码:)