新的Gradle插件版本4.1.0:不再返回任何资源字段

问题描述

要在Android应用程序中(使用Kotlin)获取所有可绘制对象,请致电R.drawable::class.java.fields
从昨天开始,它运行良好,但是随着我的更新

classpath "com.android.tools.build:gradle:4.0.2"  

classpath "com.android.tools.build:gradle:4.1.0"

它仅返回一个空数组(因此未找到任何字段/可绘制对象)。


除此以外,我进行了其他任何更改,还尝试了清理项目,重建项目,使android studio缓存无效以及再次降级和升级,但是对我没有任何帮助。


为什么会这样,有没有办法解决这个怪异的错误

解决方法

我找到了解决方法:

我通过在保护规则中添加条目来显式地排除资源收缩,从而使其发挥作用,如下所述:https://github.com/mikepenz/AboutLibraries/issues/331

您只需要将以下内容添加到您的应用模块的proguard-rules.pro文件中:

-keep class **.R$* {
    <fields>;
}