我有一个JSON对象,它包含了“Contact”对象及其子对象的列表。我试图使用gson来获取JSON对象中Model
对象的ArrayList
,但它返回了缺少类型参数的异常。我获取的类型如下:Type listType = new TypeToken<ArrayList<tModel>>() { }.getType();
并试图得到这样的列表:
GsonBuilder builder = new GsonBuilder();
Gson gson = builder.create();
ArrayList<Model> = gson.fromJson(jsonString, listType);
在我的proguard中,对象包是这样保存的:
-keep class .somerepo.contactModel.**{ *; }
我见过类似的问题,但没有一个能解决我的问题。
以下是堆栈跟踪:
致命异常错误:异步任务#2进程:运行时出现异常错误:在执行doInBackground()时发生错误。在执行doInBackground(java.util.concurrent.FutureTask.runWorker.runjava.lang.Thread.run。java.lang.RuntimeException:(源文件:62)在semereop.contact.Contact$1。(源文件:184)在some repo. contact.contact.geModelFromJson(源文件:184)中,您可以在此找到您想要的类型参数。geModelFromJson
方法从gson返回ArrayList<Model>
。
1条答案
按热度按时间pzfprimi1#
您必须向proguard文件添加更多信息:
有关更多详细信息,请检查GSON存储库中提供的Profuard文件的this example。