2015-12-02 5 views
1

Мое применение состоит из двух продуктов: свободного и профессионального. У меня есть ApplicationModule, который предоставляет объект для рекламы, но этот объект требуется только для бесплатной версии, так как у pro-версии нет зависимости com.google.android.gms:play-services-ads:8.3.0. Как я могу структурировать свой проект таким образом, что только если используется свободный вкус продукта, то ApplicationModule предоставляет объект объявления?Включение зависимости с кинжалом 2 только в один из продуктов.

ответ

1

Поскольку у вас есть два продукта, я предполагаю, что классы бесплатной версии находятся в правильной структуре версии, за пределами «основного» набора ресурсов. и им предполагается, что у вас есть другой набор ресурсов для платной версии.

Итак, инициализируйте компонент кинжала в основном наборе источников, но ApplicationModule находится в каждом наборе источников флейворов. Модуль является провайдером, поэтому, если вы хотите изменить зависимости, которые сможете получить, указав разные поставщики, хотя оба набора источников (платные, неоплачиваемые) будут иметь одинаковый ApplicationModule в каждом.

+0

Итак, внутри src у меня должно быть 3 папки: бесплатно, pro и main. Правильно ли я понял? Моя версия pro использует другое имя пакета, поэтому я также создаю отдельные папки папок внутри src/pro /? –

+0

Кроме того, что касается класса AppNameApplication, в который я вставляю эти зависимости. Я создаю другой класс AppNameApplication для каждого аромата? –

+0

Мой плохой, а не 'AppNameApplication'. Я имел в виду «MainActivity». –

Смежные вопросы