![](/img/trans.png)
[英]Exclude null values from dynamic nested json using GSON Retrofit in Android
[英]Dynamic Response from Retrofit Json to Gson Android Kotlin/Java
我有来自其余API的动态json格式,如下所示:
{
"data": {
"response_code": "success",
"value": {
"Table": [
{
"id": 5,
"username": "blahblah",
"password": "blahblah",
"role": 2,
"email": "blah@tes.com",
"tanggal_buat": "2019-01-01T00:00:00"
}
]
}
},
"meta": {
"http_status": 200
}
}
对象“值”的对象数组名称为“表”。 表可以包含我数据库中的值,这取决于我的查询。 因此,有时json格式会更改,例如:
{
"data": {
"response_code": "success",
"value": {
"Table": [
{
"id_product": 44,
"product": "blahblah",
"lot": "blahblah",
"qty": 2,
}
]
}
},
"meta": {
"http_status": 200
}
}
如何接受json值并使用“表”的不同子类直接分配给gson
我尝试翻新并使用Kotlin
override fun onResponse(call: Call<MainResp>, response: Response<MainResp>) {
mainResponse : MainResp = response.body()
}
假设您拥有以下课程(使用诸如http://www.jsonschema2pojo.org/之类的东西 ):
class Value {
List<Table> tables;
}
这里的“ Table”类不能完全随机!
您需要定义“表格”的可能类型,例如,表格1,表格2 ...表格N。
现在,您可以使用通用类型T代替Table更新Value
类,并编写自定义类型适配器:
class Value {
List<T> tables;
}
这里是有关如何编写自己的类型适配器的教程之一。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.