Я занимаюсь разработкой приложения, которое должно стать другим при переходе на другой вкус продукта. Это означает, что applicationId, определенный в следующих разновидностях:
flavorDimensions "type"
productFlavors {
one {
dimension "type"
applicationId "com.myapp.one"
}
two {
dimension "type"
applicationId "com.myapp.two"
}
}
будет преобразован после сборки в com.myapp.one.*
или com.myapp.two.*
соответственно (и базовый пакет будет динамически изменяться).
Я такжеиметь библиотечный модуль model
(apply plugin: 'com.android.library'
), который используется основным app
модулем. Модуль model
имеет тот же базовый пакет com.myapp
и подпакет model
, поэтому он должен выглядеть следующим образом: com.myapp.X.model
, где X
равен one
или two
в соответствии с выбранным вариантом сборки. Когда у меня было одно приложение с базовым пакетом com.myapp.one
и тем же идентификатором applicationId, модуль model
содержал базовый пакет com.myapp.one.model
. Но этот библиотечный модуль не может объявлять варианты продукта с переопределением applicationId, поэтому после сборки базовый пакет приложения в этом модуле не меняется на com.myapp.X.model
.
Например, в модуле app
я могу отделить источниккод или ресурсы для разных папок проекта (от одной версии app/src/main
до двух версий app/src/one
и app/src/two
) и различные реализации с различным внешним видом или логикой. Мне нужно сделать то же самое в моем библиотечном модуле.
Как я могу "переслать" этот продукт Ароматы в библиотечный модуль?
Спасибо!