В подмодуле измените разновидности следующим образом:
flavorDimensions "environment"
productFlavors {
prod { dimension "environment" }
qa { dimension "environment" }
dev { dimension "environment" }
}
И не забудьте добавить зависимость к подмодулю.
У меня похожая (лучше сказать, более сложная) ситуацияи это работает очень.Вот мои примеры основных / субмодульных вариантов Gradle, которые работают для меня:
main:
flavorDimensions "brand", "mode"
productFlavors {
// Brand
a {
dimension "brand"
applicationIdSuffix ".a"
}
b{
dimension "brand"
applicationIdSuffix ".b"
}
// Demo-mode
normal {
dimension "mode"
resValue "string", "demo_verion", ""
}
demo {
dimension "mode"
applicationIdSuffix ".demo"
versionNameSuffix "-demo"
resValue "string", "demo_verion", "DEMO VERSION"
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation project(':submodulelib')
}
субмодуль:
flavorDimensions "brand"
productFlavors {
// Brand
a{
dimension "brand"
externalNativeBuild {
cmake {
cFlags "-DA"
}
}
}
b{
dimension "brand"
externalNativeBuild {
cmake {
cFlags "-DB"
}
}
}
}