我的申请中有2 buildTypes
和5 productFlavors
。
buildTypes {
debug {
debuggable true
}
release {
debuggable false
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
flavorDimensions "default"
productFlavors {
dev {
dimension "default"
applicationIdSuffix ".dev"
versionNameSuffix "_dev"
}
qa {
dimension "default"
applicationIdSuffix ".qa"
versionNameSuffix "_qa"
}
demo1 {
dimension "default"
applicationIdSuffix ".demo"
versionNameSuffix "_demo"
}
demo2 {
dimension "default"
applicationIdSuffix ".demo2"
versionNameSuffix "_demo2"
}
prod {
dimension "default"
}
}
然后,我有很多dependencies
。
dependencies {
compile 'com.android.support:multidex:1.0.1'
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:cardview-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
compile 'com.android.support:customtabs:25.3.1'
compile 'com.jakewharton:butterknife:8.5.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
// this is the dependency I would like to modify
compile 'com.appsee:appsee-android:2.3.4'
}
我的目标是配置只有在build variant
为以下之一时才添加其中一个依赖项的内容:demo2Debug
,demo2Release
,prodDebug
和{{ 1}}
我查看了许多答案(例如this或this),他们一次只做一个构建变体。有什么方法可以说:
包含这个库是构建变体是这个,这个,这个还是这个?
修改
实现此目标的另一种方法是从一个特定的构建变体中排除依赖项。
除此之外,我有什么方法可以说包含所有构建变体的依赖项吗?