在调试中运行时,一切都按预期工作但如果我生成一个签名的APK,使用Proguard进行模糊处理 – 我收到此错误:
java.lang.VerifyError: VerifIEr rejected class d.a: androIDx.preference.Preference d.a.a(androIDx.fragment.app.k,int)Failed to verify: androIDx.preference.Preference d.a.a(androIDx.fragment.app.k,int): [0x8] ‘this’ argument ‘Reference:androIDx.fragment.app.k’ not instance of ‘Reference: androIDx.preference.B’ (declaration of ‘d.a’ appears in base.apk)
我已经尝试排除所有AndroIDX库:
-dontwarn androIDx.**-keep class androIDx.** { *; }-keep interface androIDx.** { *; }
但问题仍然存在,除非我基本上取消使用的混淆
-keep class com.myapp.package.** { *; }
还尝试查看d.a类的映射文件,但它没有提示我问题的方向.
JetifIEr已启用
androID.useandroidX=trueandroID.enableJetifIEr=true
我在这里错过了什么吗?这有可能是这个问题与androix.preference库有关吗?
>在Google issue tracker上打开了一个错误.
解决方法 编译时和运行时之间java类的不一致可能导致java.lang.VerifyError,试试文件 – >无效缓存/重新启动… – >无效并重新启动 总结以上是内存溢出为你收集整理的Android Studio 3.2上的AndroidX – 运行应用时的VerifyError全部内容,希望文章能够帮你解决Android Studio 3.2上的AndroidX – 运行应用时的VerifyError所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)