У меня есть приложение для Android, и я хотел бы иметь разные вкусы. В частности, я хотел бы иметь 2 аромата и для каждого аромата использовать разные строки (разные файлы strings.xml
) и, возможно, иметь разные значки.
Я попытался создать две папки в корневой папке проекта: flav1
и flav2
и использовал следующий build.gradle
android {
compileSdkVersion "Google Inc.:Google APIs:15"
buildToolsVersion "17.0.0"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
instrumentTest.setRoot('tests')
}
productFlavors {
flav1 {
packageName "com.ic.flav1"
}
flav2 {
packageName "com.ic.flav2"
}
}
android.sourceSets.flav2 {
res {
srcDir 'flav2'
}
resources {
srcDir 'flav2'
}
}
android.sourceSets.flav1 {
res {
srcDir 'flav1'
}
resources {
srcDir 'flav1'
}
}
}
Результатом этого является то, что ни одна из строк не распознается, получая несколько ошибок следующего типа:
build FAILED:
error: Ошибка: ресурс не найден, который соответствует указанному имени (at 'contentDescription' со значением '@string/txt_addr').
Я что-то упустил? Как должен быть build.gradle?
Спасибо