Jac*_*ień 9 android proguard android-espresso
我正在尝试配置proguard以使用我的espresso UI测试风味.事情是Proguard倾向于忽略我的调试proguard配置.
这是配置的外观:
buildTypes {
debug {
minifyEnabled true
proguardFiles 'proguard-debug.pro'
testProguardFile 'proguard-debug.pro'
signingConfig signingConfigs.release
}
}
Run Code Online (Sandbox Code Playgroud)
我补充说testProguardFile但它似乎没有起作用androidTest.我正在运行mockDebug风味变种.当我刚运行应用程序时,它工作正常,但是当我尝试运行测试时,adnroidTest由于proguard警告,它将无法运行,就像proguard文件根本没有被处理而且文件很简单:
proguard-debug.pro
-dontobfuscate
-dontoptimize
-dontwarn
Run Code Online (Sandbox Code Playgroud)
在有人开始建议我为调试版本关闭proguard之前:我需要因为multidex而启用它.
chr*_*.cl 12
如果您希望测试版本尽可能接近真实交易,请尝试以下方法:
# build.gradle
debug {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
testProguardFile 'proguard-test.pro'
}
Run Code Online (Sandbox Code Playgroud)
和
# proguard-test.pro:
-include proguard-rules.pro
-keepattributes SourceFile,LineNumberTable
Run Code Online (Sandbox Code Playgroud)
另一方面,如果你只需要因为multidex而需要它,如果你使用的是minSdkVersion <21,ProGuard会绑定到multidex标志并自动运行.
您还需要添加默认的混淆器规则:
proguardFiles getDefaultProguardFile('proguard-android.txt')
Run Code Online (Sandbox Code Playgroud)
该行可以删除,因为它是重复的:
testProguardFile 'proguard-debug.pro'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2888 次 |
| 最近记录: |