假设有以下代表服务器响应的参数化数据类:
public class SocketResponse<T> {
private String responseMessage;
private int responseCode;
private T entity;
}
我在运行时知道 T 类型是什么。moshi 是否像 Gson 一样支持泛型类型适配器?使用 Gson id 执行以下操作来解析它。
Type typeA = new TypeToken<SocketResponse<MyResponseA>>(){}.getType();
SocketResponse<MyResponseA> responseA = getResponse("json", typeA);
Type typeB = new TypeToken<SocketResponse<MyResponseB>>(){}.getType();
SocketResponse<MyResponseB> responseB = getResponse("json", typeB);
private String getResponse(Type t){
return gson.fromJson(response, type);
}