Моя проблема во многом описана в следующих вопросах: Варианты сборки в Gradle для проекта библиотеки в Android
То есть я делаю модуль библиотеки с отладкой иВыпуск типов сборки, и каждый тип сборки имеет свои собственные ресурсы (например, в strings.xml
).Однако ресурсы релиза всегда выбираются даже при сборке варианта отладки.
Практически все, что я читаю, указывает на то, что это было исправлено в Android Studio 3.0, но у меня версия 3.3, и проблема по-прежнему возникает,Одно из предложений, которое я видел, это использовать releaseCompile
и debugCompile
.Они устарели, поэтому я использовал замены:
debugImplementation project(path: ':myLibrary', configuration: 'debug')
releaseImplementation project(path: ':myLibrary', configuration: 'release')
Это приводит к следующим ошибкам:
ERROR: Unable to resolve dependency for ':app@myAppDebug/compileClasspath': Could not resolve project :myLibrary.
Affected Modules: app
ERROR: Unable to resolve dependency for ':app@myAppDebugAndroidTest/compileClasspath': Could not resolve project :myLibrary.
Affected Modules: app
ERROR: Unable to resolve dependency for ':app@myAppDebugUnitTest/compileClasspath': Could not resolve project :myLibrary.
Affected Modules: app
Я четыре раза проверил орфографию, и она соответствует имени библиотеки.Я делал это раньше, что приводило к некорректному поведению, описанному выше:
implementation project(':myLibrary')
Из файла сборки библиотеки:
android {
publishNonDefault true
...
buildTypes {
debug {}
release {
minifyEnabled false
zipAlignEnabled true
signingConfig signingConfigs.releaseConfig
//proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
...
У меня также есть тип сборки "qa", который у меня естьне обсуждается, но у меня нет оснований полагать, что это актуально, поскольку в настоящее время я не пытаюсь создать этот тип.Любые предложения или что-то еще, что я должен добавить к вопросу?