我想在已启用proguard的android中测试发布apk。但是我不希望android test apk启用proguard。
是否可以通过某种方式禁用对Android测试APK的保护。
我添加了
defaultConfig {
....
testBuildType 'release'`
}
和
buildTypes {
release {
minifyEnabled true
signingConfig signingConfigs.Release
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
//proguard files for the android test apk
testProguardFile('proguard-test-rules.pro')
}
}
正在寻找一种方法来禁用针对Android测试的proguard。
答案 0 :(得分:0)
使其工作如下。
android {
defaultConfig {
/**
* switch to testBuildType release when the parameter has androidTestRelease
* ./gradlew :app:assembleReleaseAndroidTest -PandroidTestRelease
**/
if (project.hasProperty('androidTestRelease')) {
testBuildType 'release'
} else {
testBuildType 'debug'
}
}
buildTypes {
release {
/***
* Disable proguard when building the android test release apk
* ./gradlew :app:assembleReleaseAndroidTest -PandroidTestRelease
*/
if (project.hasProperty('androidTestRelease')) {
minifyEnabled false
} else {
minifyEnabled true
}
signingConfig signingConfigs.Release
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
testCoverageEnabled = true
}
}
}
您可以使用
构建apk./gradlew :app:assembleReleaseAndroidTest -PandroidTestRelease
答案 1 :(得分:0)
禁用ProGuard可能(无用)...更好地创建debuggable
软件包:
staging {
signingConfig signingConfigs.Release
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
testCoverageEnabled true
minifyEnabled false
zipAlignEnabled true
shrinkResources true
pseudoLocalesEnabled false
renderscriptDebuggable true
jniDebuggable true
debuggable true
}
甚至还不确定是否可以对发布版本进行测试(通过设计)。