Class cannot be cast to java.lang.reflect.ParameterizedType

debug打包没问题 release 打包就提示这个错误,找了好久,对了几遍数据结构也没发现问题,然后百度一堆,大多是提示是gson问题,代码排查也没发现提示gson有啥问题,混淆文件也排查了半天,最后还是百度找到了答案

发现是AGP升级到8.x导致Retrofit的混淆问题

需要再混淆规则里面添加

# 使用R8全模式,对未保留的类剥离通用签名。挂起函数被包装在使用类型参数的continuation中。
-keep,allowobfuscation,allowshrinking class kotlin.coroutines.Continuation

# 如果不保留,R8完整模式将从返回类型中剥离通用签名。
-if interface * { @retrofit2.http.* public *** *(...); }
-keep,allowoptimization,allowshrinking,allowobfuscation class <3>

# 在R8全模式下,对未保留的类剥离通用签名。
-keep,allowobfuscation,allowshrinking class retrofit2.Response
 

                      
原文链接:https://blog.csdn.net/qq_37324563/article/details/140461119

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值