Добавление зависимости от приложения со вкусом продукта

Я опробую последнюю модель упаковки и доставки приложений Android - App Bundles.

Я создал модуль динамических функций и определил зависимость от основного приложения.

implementation(':app')

Теперь мой app модуль имеет разные productFlavors,

productFlavors {
  free {
    ...
  }

  pro {
    ...
  }
}

Моя динамическая особенность не требует каких-либо вкусов продукта. Но теперь я получаю следующую ошибку при синхронизации gradle -

Unable to resolve dependency for ':dynamic_feature@debug/compileClasspath': 
Could not resolve project :app.

Я могу это исправить, определив то же самое productFlavors в моем модуле динамических функций, но это абсолютно необходимо?

Я обобщаю случай, когда у меня есть много разных подмодулей и productFlavors и определяя productFlavors в каждом модуле ощущается избыточность.

1 ответ

В этом случае вам придется объявить missingDimensionStrategy для динамического функционального модуля, который не имеет вкуса.

В вашем com.android.dynamic-feature модуль вы бы добавили что-то вроде этого

android {
// other things
    defaultConfig {
        // other things
        missingDimensionStrategy 'pro' // or whichever dimension you want to use
    }
}

Вы можете найти больше об этом и почему это необходимо в документации.

Другие вопросы по тегам