AndroidStudio 升级到bumblebee版本后,默认开启非传递性R类
描述:
启用非传递性 R 类 (non-transitive R-class) 后,您应用中的 R 类将只会包含在子项目中声明的资源,依赖项中的资源会被排除在外。这样一来,子项目中的 R 类大小将会显著减少。
这一改动可以在您向运行时依赖项中添加新资源时,避免重新编译下游模块。在这种场景下,可以给您的应用带来 40% 的性能提升。另外,在清理构建产物时,我们发现性能有 5% 到 10% 的改善。
对于部分工程架构base module中包含能用资源时,主module将无法通过R引用,解决办法,手动关闭非传递性R类
解决办法
gradle.properties中:android.nonTransitiveRClass=false