使用Kotlin的数据类,数据类存在泛型,Gson在反序列化报错问题?

来源:4-6 如何支持 Kotlin 协程的 suspend 函数?

13日术之

2021-08-17 17:34

http://img2.mukewang.com/611b80cb0001316a20201626.jpg

相关代码如上,学习了之前的GsonConvert的章节,我觉得,应该Kotlin的数据类没有无参构造器,使得GsonConvert在反序列化生成实例时采用了Unsafe,但是由于泛型擦除,Unsafe在生成BaseResponse实例时,并不知道data的类型,所以分配的内存大小与实际的对象所需的内存大小不一致,造成最终Gson反序列化失败,于是报错了。不知道我理解的对不对。但是具体的解决方案我还未找到,我查找的一些开源项目也都是直接使用确定类型,未使用泛型

写回答 关注

0回答

还没有人回答问题,可以看看其他问题

破解Retrofit

带你深度剖析网络请求框架Retrofit

7214 学习 · 17 问题

查看课程

相似问题