Open liujingxing opened 10 months ago
出现该问题的原因是,完整模式下,对于没有keep的类,将会擦出泛型信息
目前有3个解决方案
1、手动关闭完整模式,在gradle.properties
文件中添加以下代码
android.enableR8.fullMode=false
2、添加以下规则到proguard-rules.pro
文件中
-keepattributes Signature
-keep,allowobfuscation,allowshrinking class * extends rxhttp.wrapper.parse.TypeParser
3、升级RxHttp至v3.2.1
或更高版本
如果项目中有自定义解析器,并且使用了类似于BaseResponse<T>
的类,也要添加以下规则到gradle.properties
文件中,其它带有泛型的实体类同理
-keep,allowobfuscation,allowshrinking class xxx.xxx.BaseResponse
其中xxx.xxx
是类路径
RxHttp 版本 v3.2.0
通过
android.enableR8.fullMode=true
开启R8完整模式,或将AGP
升级至8.0及以上版本,将默认开启完整模式,此时执行以下代码,将发生闪退闪退日志