这是我拥有的 JSON 示例
filter : [
{ category: [] } ,
{ sub-category: [] } ,
{ brand: [] } ,
{ color: [] }
]
请注意,标签“类别、子类别...”可能会动态变化
如何使用 Moshi 解析这个 JSON?
将其解码为Map<String, Object>
. 映射键将是您的 JSON 值。你可以像这样得到那个适配器:
Type map = Types.newParameterizedType(Map.class, String.class, Object.class);
JsonAdapter<Map<String, Object>> adapter = moshi.adapter(map);
在 kotlin 中,来自 json 的 Map<String, Object>:
val moshi = Moshi.Builder().build()
val adapter = moshi.adapter<Map<String, Any>>(
Types.newParameterizedType(Map::class.java, String::class.java,
Object::class.java)
)
val yourMap = adapter.fromJson(jsonFile)