Я создаю проект для Android с различными вариантами продукта. Моя структура проекта такая
Flavor1
Аромат2
Main
где Flavor1 содержит файл Constants.java, Flavor2 также содержит файл Constants.java, но его нет в main. Мой основной пакет содержит другой класс Controller, который использует переменные, определенные в константах. Когда я пытаюсь запустить мой проект, он выдает ошибку « Не удается разрешить константы символа ».
Когда я нажимаю alt + enter, он импортирует файл из выбранного аромата, и ошибка исчезает, но когда я переключаюсь на другой аромат, он не идентифицирует импорт, потому что он из flav1.
Вот код из моего файла build.gradle, который определяет вкусы и исходные коды продуктов.
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
debuggable true
applicationIdSuffix ".debug"
}
}
productFlavors {
Flavor1{
applicationId = "app.com.Flavor1
}
Flavor2{
applicationId = "app.com.Flavor2
}
}
sourceSets {
main{
java {
srcDirs('src/Flavor1/java/src', 'src/Flavor2/java/src','src/main/java/src')
}
res {
srcDirs('src/Flavor1/res/src', 'src/Flavor2/res/src','src/main/res/src')
}
}
Flavor1{
java {
srcDirs('src/Flavor1/java/src', 'src/main/java/src')
}
res {
srcDirs('src/Flavor1/res/src', 'src/main/res/src')
}
}
Flavor2{
java {
srcDirs('src/Flavor2/java/src', 'src/main/java/src')
}
res {
srcDirs('src/Flavor2/res/src', 'src/main/res/src')
}
}
}
Я хочу, чтобы у каждого аромата был свой файл констант. Как этого можно достичь? Как я могу использовать файл Constants каждого варианта в основном, чтобы он импортировал или использовал файл выбранного варианта сборки?
Любая помощь будет оценена.