更新Android Studio后项目R8混淆出现类缺失问题求助
解决Android Studio更新后缺失类的问题
这些缺失的类大多是OkHttp的可选TLS实现依赖,以及Google Play服务相关的Protobuf类,以下是具体解决办法:
方案一:添加对应可选依赖(若需使用相关功能)
如果你的项目需要用到BouncyCastle、Conscrypt或OpenJSSE的TLS能力,或者需要完善Google Play服务相关功能,在模块的build.gradle中添加对应依赖:
- BouncyCastle相关:
implementation 'org.bouncycastle:bcpkix-jdk15on:1.70' implementation 'org.bouncycastle:bcprov-jdk15on:1.70' implementation 'org.bouncycastle:bctls-jdk15on:1.70'
- Conscrypt相关:
implementation 'org.conscrypt:conscrypt-android:2.5.2'
- OpenJSSE相关:
implementation 'org.openjsse:openjsse:1.1.13'
- Google Play服务Protobuf类:
implementation 'com.google.android.gms:play-services-base:18.2.0'
方案二:配置ProGuard/R8忽略警告(无需相关功能时)
如果不需要上述依赖,只是想消除缺失类的警告,在proguard-rules.pro中添加以下规则:
-dontwarn com.google.protobuf.java_com_google_android_gmscore_sdk_target_granule__proguard_group_gtm_N1281923064GeneratedExtensionRegistryLite$Loader -dontwarn org.bouncycastle.jsse.** -dontwarn org.conscrypt.** -dontwarn org.openjsse.**
若之前配置后未生效,检查是否开启了R8全模式,可在gradle.properties中关闭:
android.r8.fullMode=false
方案三:更新OkHttp并清理缓存
部分情况是依赖版本冲突导致,尝试更新OkHttp到最新稳定版:
implementation 'com.squareup.okhttp3:okhttp:4.11.0'
同步项目后,执行File -> Invalidate Caches... -> Invalidate and Restart清理Android Studio缓存。
内容的提问来源于stack exchange,提问作者JpA
相关产品推荐
相关产品推荐

