Я должен обрабатывать динамические ответы JSON.Пользовательский конвертер для дооборудования 2
Раньше я использовал классы и аннотации следующим образом:
public class ChatResponse {
@SerializedName("status")
private int status;
@SerializedName("error")
private String error;
@SerializedName("response")
private Talk response;
public int getStatus() {
return status;
}
public String getError() {
return error;
}
public Talk getResponse() {
return response;
}
}
Когда статус 1 (успех) onResponse
обжигают, и я могу получить объект ChatResponse. Но, когда статус равен 0, ответ представляется в представлении JSON и он не работает (onFailure
уволен).
Я хочу, чтобы создать свой собственный конвертер, и this question имеют хороший пример, но пример для Модернизированного 1.
I have to создать класс, который расширяет Converter.Factory
, но я не знаю, как переопределить методы этого класса.
На самом деле у меня есть следующий:
@Override
public Converter<ResponseBody, ?> fromResponseBody(Type type, Annotation[] annotations) {
return super.fromResponseBody(type, annotations);
}
@Override
public Converter<?, RequestBody> toRequestBody(Type type, Annotation[] annotations) {
return super.toRequestBody(type, annotations);
}
Как я могу разобрать ответ JSON моим собственным в этой точке?
Заранее спасибо.
Это добавит статический преобразователь завода для того же типа реакции. Что делать, если я хочу, чтобы разбор различных объектов ответа был необязательным? У меня могут быть различные ответы для различных apis с параметрами и фиксированными объектами ответа. –