Desserializando Tipos Genéricos com GSON

Eu tenho alguns problemas com a implementação de desserialização Json no meu aplicativo Android (com biblioteca Gson)

Eu fiz aula assim

public class MyJson<T>{
    public List<T> posts;
}

E a chamada de desserialização é:

public class JsonDownloader<T> extends AsyncTask<Void, Void, MyJson<T>> {
...
protected MyJson<T> doInBackground(Void... params) {
  ...
    Reader reader = new InputStreamReader(content);
    GsonBuilder gson = new GsonBuilder();
    Type collectionType = new TypeToken<MyJson<T>>() {}.getType();
    result = gson.create().fromJson(reader, collectionType);
  ...
  }
}

O problema é que a lista de results.posts após a chamada contém uma matriz de objetos LinkedTreeMap (com valores corretos para que o problema seja a desserialização) em vez de objetos MyJson. Quando eu uso MyObject em vez de T tudo está funcionando bem e MyObject está correto.

Portanto, há alguma maneira de implementar a chamada de desserialização sem criar um desserializador personalizado?

questionAnswers(4)

yourAnswerToTheQuestion