Как мне использовать универсальный тип T с Retrofit? - PullRequest
0 голосов
/ 25 января 2019

Я хочу использовать T в Retrofit, но я не знаю, как установить T в методе Retrofit.create (X.class).

public interface SupportService<T> {
    @GET
    Flowable<BaseResponse<T>> getApi(@Url String url, @Query("data") JsonObject jsonObject);
}

HttpRetrofit.getInstance()
                .getRetrofit(this)
                .<SupportService<T>>create(SupportService.class)
                .getApi("",null)
public class BaseResponse<T>{
    public int code;
    public String message;
    public T data;   
}

1 Ответ

0 голосов
/ 25 января 2019

«Т» остается для универсального типа по вашему выбору.При модернизации вы можете определить свой класс модели данных в соответствии с ответом API, например, с помощью аннотации @SerializedName, если вы используете GSON в качестве библиотеки сериализации.Этот тип "T" будет классом, определенным для ответа API. Здесь вы можете найти простое учебное пособие по модернизации.

...