我在productFlavors
文件中创建了2个build.gradle
productFlavors {
flavorA {
dimension "default"
}
flavorB {
dimension "default"
}
}
还有2个buildTypes
debug
和release
因此gradle将Build Variants
创建为flavorADebug
,flavorARelease
,flavorBDebug
和flavorBRelease
我想在FlavorDI
和debug
包中创建一个release
文件,以使debug/FlavorDI
对于flavorADebug
和flavorBDebug
是通用的,并且release/FlavorDI
对于flavorARelease
和flavorBRelease
是通用的。
但是当我在FlavorDI
中包含AppComponent
时,该包将无法识别。
@Singleton
@Component(modules = [
AppModule::class,
ActivityModule::class,
FragmentModule::class,
ViewModelModule::class,
NetModule::class,
FlavourDI::class, // Could not import FlavourDI
AndroidSupportInjectionModule::class,
AndroidInjectionModule::class
])
我应该如何精确创建FlavorDI
文件,以使debug/FlavorDI
对flavorADebug
和flavorBDebug
变体是通用的,而release/FlavorDI
对{{ 1}}和flavorARelease
的变体?
答案 0 :(得分:0)
确保使用正确的构建版本。另外,您可能需要使用flavorDimension
。这是我在build.gradle
中进行类似设置的条件:
flavorDimensions 'mobile'
productFlavors {
internal {
dimension = 'mobile'
applicationId = 'com.labs.biletskiy.android.internal'
}
production {
dimension = 'mobile'
applicationId 'com.labs.biletskiy.android.production'
}
}