新 gradle 插件版本 (4.1.0):不再返回任何资源字段

New gradle plugin version (4.1.0): no longer returning any ressource fields

要获取 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"

它只是 returns 一个空数组(因此没有找到字段/可绘制对象)。


我更改了除此之外的任何内容,还尝试清理项目、重建它、使 android 工作室缓存无效并再次降级和升级,但对我来说没有任何效果。


为什么会这样,有没有办法修复那个奇怪的错误?

我找到了解决方案:

我通过向 proguard 规则添加一个条目将字段显式排除在资源缩减之外使其工作,如下所述:https://github.com/mikepenz/AboutLibraries/issues/331

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

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