开发 Android 应用程序。
我正在使用改造来得到我的回应。目前我已经制作了一个 POJO 模型类,其中包含所有类型的字段(实际上它们有更多的字段和自己的方法,所以我在这里简化了它们很多)。
代码来自Client.class
:
OkHttpClient.Builder builder = new OkHttpClient.Builder();
builder.readTimeout(30, TimeUnit.SECONDS);
OkHttpClient okHttpClient = builder.build;
Retrofit retrofit = new Retrofit.Builder()
.addConverterFactory(GsonConverterFactory.create())
.client(okHttpClient)
.build();
我想要实现的是所有类型的特定模型(Taxi.class
and Van.class
) 正在扩展基类Car.class
目前我的Car.class
看起来像这样:
public class Car {
public String type;
public String id;
public boolean isClean;
public int seats;
public int fuelTankCapacity;
}
但我想要这样的汽车、货车和出租车模型:
public class Car {
public String type;
public String id;
}
public class Van extends Car {
public int fuelTankCapacity;
}
public class Taxi extends Car {
public boolean isClean;
public int seats;
}
来自服务器的响应(JSON):
{
"items": [{
"type": "taxi",
"id": "1i2ilkad2",
"isClean": "true",
"seats": "5"
},
{
"type": "van",
"id": "aopks21k",
"fuelTankCapacity": 76
}, etc...
]
}
我知道应该通过添加额外的行来完成,例如.addConverterFactory(new CarJSONConverter())
改造实例,但我不知道应该如何实现这个转换器..