Я решил эту проблему, используя специальный десериализатор.
У меня был класс с двумя участниками, отметкой времени и списком двойников. Это код, который работал для меня.
GsonBuilder gsonBuilder = new GsonBuilder();
gsonBuilder.registerTypeAdapter(TimestampedValueList.class, new JsonDeserializer<TimestampedValueList>() {
@Override
public TimestampedValueList deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
long timestampMs = json.getAsJsonObject().get("timestampMs").getAsLong();
double[] valueList = context.deserialize(json.getAsJsonObject().get("valueList"), double[].class);
return new TimestampedValueList(timestampMs, valueList);
}
});
gson = gsonBuilder.create();
Надеюсь, это может кому-нибудь помочь!