我启用了R8插入以防止混淆
我得到一个异常,当我试图生成签名apk
"Library class android.content.res.XmlResourceParser implements program class org.xmlpull.v1.XmlPullParser"
我在proGuard规则中添加了下面的proGuard规则。箴文件
-dontwarn org.xmlpull.v1.**
-dontnote org.xmlpull.v1.**
-keep class org.xmlpull.** { *; }
-keepclassmembers class org.xmlpull.** { *; }
和我的发布构建规范
buildTypes {
release {
useProguard false
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
帮助修复此问题
在proguard-rules文件中添加这些行:
-dontwarn org.xmlpull.v1.**
-dontwarn org.kxml2.io.**
-dontwarn android.content.res.**
-dontwarn org.slf4j.impl.StaticLoggerBinder
-keep class org.xmlpull.** { *; }
-keepclassmembers class org.xmlpull.** { *; }
我100%肯定这些行会解决你的问题。
gradle.properties
android.enableR8.fullMode=false
令人惊讶的是,我也有同样的问题,并将问题海报提到的这些行添加到我的proguard规则中。专业解决:
-dontwarn org.xmlpull.v1.**
-dontnote org.xmlpull.v1.**
-keep class org.xmlpull.** { *; }
-keepclassmembers class org.xmlpull.** { *; }