我有一个带有库项目模块的Android项目,在该项目中,我使用okhttp3进行reatrofit来执行API请求。我需要使用Proguard来混淆该项目,但是当我尝试构建签名的APK时,我会收到与Okhttp有关的大量错误:
can't find referenced class javax.annotation.Nullable
can't find referenced class javax.annotation.ParametersAreNonnullByDefault
我试图在主应用程序和库项目proguard文件中遵循规则,但似乎没有任何作用:
-dontwarn javax.annotation.Nullable
-dontwarn javax.annotation.ParametersAreNonnullByDefault
任何帮助都将不胜感激。
在大量搜索之后,我在github上的评论中遇到了答案:
我必须使用:
buildTypes {
release {
debuggable false
minifyEnabled false
useProguard true
consumerProguardFiles 'proguard-rules.pro'
}
}
i然后在模块的proguard文件中设置规则,并且毫无问题地工作。