val moshi = Moshi.Builder().build() val type = Types.newParameterizedType(Map::class.java, String::class.java, Double::class.java) val adapter = moshi.adapter<Map<String, Double>>(type) val result = adapter.fromJson(InitData.json) simplemente cambiando de Gson a Moshi y me encontré con este problema. Espero que el código anterior funcione, ya que parece funcionar bien con Map<String, String> .
Obtengo una excepción IllegalArgumentException: doble primitivo inesperado. Utilice el tipo de caja
Lo mismo para flotar. Sé lo que está pasando aquí, pero ¿esto no es posible con Moshi?
Esto está usando com.squareup.moshi:moshi-kotlin:1.8.0
Use Types.newParameterizedType(Map::class.java, String::class.java, Double::class.javaObjectType)
javaOjectType devuelve el tipo en caja correspondiente para los tipos primitivos.