最近升级了一下工具,结果打包的时候出问题了,类型转换异常(Class cannot be cast to java.lang.reflect.ParameterizedType)
乍一看是混淆规则没写好,bean类转换出问题了,结果研究了一晚上才发现是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