Android 使用productFlavors调试和发布包
我在Android 使用productFlavors调试和发布包,android,build.gradle,dagger,android-build-flavors,Android,Build.gradle,Dagger,Android Build Flavors,我在build.gradle文件中创建了2个productFlavors productFlavors { flavorA { dimension "default" } flavorB { dimension "default" } } 和2个buildTypesdebug和release 因此,gradle创建了构建变体,如香精虫,香精虫,香精虫和香精虫 我想在debu
build.gradle
文件中创建了2个productFlavors
productFlavors {
flavorA {
dimension "default"
}
flavorB {
dimension "default"
}
}
和2个buildTypes
debug
和release
因此,gradle创建了构建变体
,如香精虫
,香精虫
,香精虫
和香精虫
我想在debug
和release
包中创建一个volumedi
文件,这样debug/volumedi
对于volumadebug
和volumbdebebebebebug
是通用的,而release/volumedi
对于volumerarelease
和是通用的
但是,当我在AppComponent
中包含FlavorDI
时,该包无法识别
@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
和flavordebebebebug
变体是通用的,而release/FlavorDI
对flavordebrelease
和flavordebrelease
变体是通用的
确保您使用的是正确的构建变体。此外,您可能需要使用flavorDimension
。这是我的build.gradle中类似设置的内容:
flavorDimensions 'mobile'
productFlavors {
internal {
dimension = 'mobile'
applicationId = 'com.labs.biletskiy.android.internal'
}
production {
dimension = 'mobile'
applicationId 'com.labs.biletskiy.android.production'
}
}
确保您使用的是正确的构建变体。此外,您可能需要使用flavorDimension
。这是我的build.gradle中类似设置的内容:
flavorDimensions 'mobile'
productFlavors {
internal {
dimension = 'mobile'
applicationId = 'com.labs.biletskiy.android.internal'
}
production {
dimension = 'mobile'
applicationId 'com.labs.biletskiy.android.production'
}
}
在你注射的课程上你到底需要什么?最好放一个if-else语句来检查味道,并使用相应的代码,而不是在包中分割它们(在这种情况下,通过包味道分割它不起作用),因为这样做是错误的。不管调试和发布目录如何,都要创建您的flavorA和flavorB目录,然后放入特定于flavor的代码there@JeelVankhede然后我必须为每个构建变量创建一个单独的包。我不想那样。我只是想为ProductFlavor分别提供两个软件包,即调试和发布。我不认为多风格构建是这样工作的。您在注入的类上到底需要什么?最好放一个if-else语句来检查味道,并使用相应的代码,而不是在包中分割它们(在这种情况下,通过包味道分割它不起作用),因为这样做是错误的。不管调试和发布目录如何,都要创建您的flavorA和flavorB目录,然后放入特定于flavor的代码there@JeelVankhede然后我必须为每个构建变量创建一个单独的包。我不想那样。我只是想要两个软件包,即分别为产品flavor调试和发布。我不认为多味构建是这样工作的。我有构建变体,如flavorADebug、FlavorRelease、FlavorBDebebug和FlavorBreease。FlavorDI类位于调试和发布包中。我应该选择哪个构建变体?它不适用于任何构建变体。是的,我还包括了flavorDimensions。另外,请确保缺少的文件中的包声明是正确的。我的构建变体有flavorADebug、FlavorRelease、FlavorBDebebebug和FlavorBreease。FlavorDI类位于调试和发布包中。我应该选择哪个构建变体?它不适用于任何构建变体。是的,我也包含了一些维度。另外,请确保缺少的文件中的包声明是正确的。