-
Notifications
You must be signed in to change notification settings - Fork 207
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Работа с несколькими модулями #209
Comments
Это интересная точка роста. Только у меня пока нет идей, как это можно хорошо сделать. Наверное, нужно добавлять какой-то аргумент аннотейшен процессора и как-то по другому генерировать код. |
Есть идея сделать как в архитектурных компонентах от Google. Проработаем этот вариант |
Модули ActivityA и ActivtyB это library module, так? А кто их запускает? |
Описанная ситуация - для проекта с поддержкой Instant App. В представленной выше схеме это FeatureModule - фича из InstantApp, FullModule - модуль полного приложения, который включает в себя FeatureModule. |
…n module. This allows Instant App support (Arello-Mobile#209), running unit-tests for feature modules (Arello-Mobile#223) and other issues Arello-Mobile#224. Here, Moxy always references to MoxyReflector by com.arellomobile.mvp package and generates MoxyReflectorDelegate for each module. In order to use Moxy, there is no need to follow instructions described on this page https://github.com/Arello-Mobile/Moxy/wiki/Multiple-modules Now it is only required to add 1 line of code to BaseActivity.onCreate of each module : MoxyReflector.registerDelegate(MoxyReflectorDelegate.INSTANCE);
@xanderblinov @senneco could you please check this PR (#247) ? |
…n module. This allows Instant App support (Arello-Mobile#209), running unit-tests for feature modules (Arello-Mobile#223) and other issues Arello-Mobile#224. Here, Moxy always references to MoxyReflector by com.arellomobile.mvp package and generates MoxyReflectorDelegate for each module. In order to use Moxy, there is no need to follow instructions described on this page https://github.com/Arello-Mobile/Moxy/wiki/Multiple-modules Now it is only required to add 1 line of code to BaseActivity.onCreate of each module : MoxyReflector.registerDelegate(MoxyReflectorDelegate.INSTANCE);
Имеется следующая структура
FeatureModule
-- ActivityA
-- ActivtyB
FullAppModule
-- ActivityC
FeatureModule - отдельная фича приложения (доступная для запуска отдельно от полного приложения), FullAppModule - полное приложение, которые содержит в себе FeatureModule.
ActivityA, ActivityB, ActivityC используют Moxy.
Согласно документации, чтобы сборка FullAppModule успешно работала необходимо в FeatureModule в build.gradle указать путь arg("moxyReflectorPackage", "some.unique.package.name") и прописать его в FullAppModule в виде аннотации @RegisterMoxyReflectorPackages.
Если сделать таким способом, то при запуске FeatureModule отдельно от FullAppModule функционал Moxy не будет работать, т.к. MvpProcessor ищет MoxyReflector внутри пакета com.arellomobile.mvp, а его там нет, т.к. из-за правила arg("moxyReflectorPackage", "some.unique.package.name") он сгенерировался в другом пакете.
Концепция с RegisterMoxyReflectorPackages не очень подходит, когда в проекте есть модули, доступные для запуска по отдельности.
Планируется ли какой-то фикс для этой ситуации?
The text was updated successfully, but these errors were encountered: