Mod*_*ody 5 obfuscation android proguard gradle android-productflavors
我需要为测试库制作不同的风格.为什么?好吧,我希望项目完全安全,所以我想缩小一直启用(即使是调试版本类型).
在进行测试时,我正在使用项目中的不同类,所以我决定使用flavor更改proguard文件.它看起来像这样:
android {
...
buildTypes {
release {
minifyEnabled true
testProguardFile 'test-proguard-rules.pro'
}
debug {
minifyEnabled true
testProguardFile 'test-proguard-rules.pro'
}
}
...
productFlavors{
forTest{
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules1.pro', 'debug-rules.pro'
}
forRelease{
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro', 'debug-rules.pro'
}
}
}
Run Code Online (Sandbox Code Playgroud)
和proguard-rules*文件
ProGuard的规则:
-dontwarn blablabla.**
-dontwarn blabla.**
-keep class bla.** { *; }
Run Code Online (Sandbox Code Playgroud)
ProGuard的-rules1:
-dontshrink
-dontobfuscate
-dontwarn
Run Code Online (Sandbox Code Playgroud)
但这对我没有帮助.我想在没有混淆的情况下运行测试.Flavors没有minifyEnabled这样的参数,所以我试图找到任何解决方案.那么有关解决问题的任何建议吗?可能有人有同样的问题,并找到另一种解决方案(不使用口味)?
Mar*_*ark 10
经过一整天的捣乱,我发现了以下作品:
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
flavorA {
applicationIdSuffix ".a"
proguardFile 'flavorA_rules.pro'
}
flavorB {
applicationIdSuffix ".b"
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2354 次 |
| 最近记录: |