Custom Konverter für Retrofit 2

Ich muss mit dynamischen JSON-Antworten umgehen.

Davor habe ich Klassen und Anmerkungen wie folgt verwendet:

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;
    }
}

Wenn der Status 1 (Erfolg) ist, wird dasonResponse wird ausgelöst und ich kann ein ChatResponse-Objekt abrufen. Wenn der Status jedoch 0 ist, ist die Antwort in der JSON-Darstellung falsch und schlägt fehl onFailure wird ausgelöst).

Ich möchte meinen benutzerdefinierten Konverter erstellen unddiese Frag hat ein gutes Beispiel, aber dieses Beispiel ist für Retrofit 1.

Ich mus erstelle eine Klasse, die @ erweiteConverter.Factory, aber ich weiß nicht, wie ich die Methoden dieser Klasse überschreiben soll.

igentlich habe ich das nächste:

@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);
}

Wie kann ich die JSON-Antwort an dieser Stelle selbst analysieren?

Danke im Voraus

Antworten auf die Frage(8)

Ihre Antwort auf die Frage