假设我需要对应用程序项目和它所依赖的库项目应用相同的规则,我是否需要将proguard.cfg的内容从应用程序复制到库项目?
换句话说,应用程序的proguard.cfg“接管”它所依赖的所有库项目,还是我必须为每个库项目明确指定规则?
答案 0 :(得分:97)
图书馆项目本身不运行ProGuard,因此他们不使用任何配置。
应用程序项目模糊整个代码库,包括任何引用的库,因此需要对应用程序代码和库代码进行适当的配置。
答案 1 :(得分:4)
似乎答案是“否”:Proguard会混淆代码from the libraries too。
但那是在2010年,我们非常清楚规格在不断变化,特别是在Android开发工具中。因此,如果出现更权威的答案,我会接受它。
答案 2 :(得分:0)
在库项目的build.gradle中,在buildTypes中将行:consumerProguardFiles 'proguard-rules.pro'
添加为:
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
consumerProguardFiles 'proguard-rules.pro'
}
}
在根项目的build.gradle
中启用minifyEnabled
。
天秤座的守护者会起作用。