Size: a a a

Moxy – MVP библиотека под Android

2021 February 05

AD

Aleksey D. in Moxy – MVP библиотека под Android
Nikita Ilyasov
Hilt точнее
не, это уже перебор, ненужно усложнение
источник

P

Pavel in Moxy – MVP библиотека под Android
Пример с AssistedInject есть в моём небольшом сэмпле:
https://github.com/PavelSidyakin/WeatherForecast
источник

NI

Nikita Ilyasov in Moxy – MVP библиотека под Android
Aleksey D.
не, это уже перебор, ненужно усложнение
потому что там уже компоненты готовые?
источник

AD

Aleksey D. in Moxy – MVP библиотека под Android
Nikita Ilyasov
потому что там уже компоненты готовые?
потому, что он слишком много работы берет на себя и при необходимости сделать что-то не по его правилам придется рвать волосы на голове
источник

NI

Nikita Ilyasov in Moxy – MVP библиотека под Android
@snoozerio @fox_spa @DeKaNszn всем спасибо большое
источник

P

Pavel in Moxy – MVP библиотека под Android
Aleksey D.
потому, что он слишком много работы берет на себя и при необходимости сделать что-то не по его правилам придется рвать волосы на голове
Что-то такое я уже слышал про android injection :)
С hilt не знакомился пока. Может и не стоит тогда :)
источник

АЕ

Алексей Ершов... in Moxy – MVP библиотека под Android
Aleksey D.
потому, что он слишком много работы берет на себя и при необходимости сделать что-то не по его правилам придется рвать волосы на голове
решить задачку сохранения даггеровского компонента так, чтобы его ЖЦ соответствовал ЖЦ андроид-компонента - задачка не самая простая без хилта) Но давайте это уже в @dagger_2
источник

AD

Aleksey D. in Moxy – MVP библиотека под Android
Алексей Ершов
решить задачку сохранения даггеровского компонента так, чтобы его ЖЦ соответствовал ЖЦ андроид-компонента - задачка не самая простая без хилта) Но давайте это уже в @dagger_2
да шо там решать - один экстеншн на базе VM и готово)
хочется еще круче, чтобы как в Моху - на базе презентера
оверкилл при применении влоб, можно только механзимы достать
источник

P

Pavel in Moxy – MVP библиотека под Android
Алексей Ершов
решить задачку сохранения даггеровского компонента так, чтобы его ЖЦ соответствовал ЖЦ андроид-компонента - задачка не самая простая без хилта) Но давайте это уже в @dagger_2
В мокси как раз в презентере можно прикопать на него ссылку. На первый взгляд, выглядит может не очень круто, но в случае мокси здесь гарантируется, что жц компонента будет ровно таким, как жц презентера активити или фрагмента.

Если примешать сюда что-то другое, что так же хэндлит жц, то тут получается параллельная логика: мокси следит за жц и что-то ещё (хилт или т.п.) следит за жц. Причём, эта логика слежения за жц должна быть одинаковой и там и там, чтобы избежать потенциальных проблем. Она может, по факту и одинаковая, но 100% гарантий тут нет.

Я как-то задавал тут вопрос, что было бы неплохо иметь возможность что-то прикопать в активити или фрагменте  (по факту, про даггеровский компонент и шла речь) , чтобы оно жило по тем же принципам, что и презентер. Мне ответили, что можно сделать ещё один презентер и там прикопать. В принципе, разумно. А докручивать ещё сюда хилт зачем? Есть какой-то смысл?
источник

АЕ

Алексей Ершов... in Moxy – MVP библиотека под Android
всё правильно говорите, просто хилт из коробки позволяет сделать всё как в VM) И это хорошо, потому что иначе у всех свои велосипеды. Если ваш велосипед работает то отлично, а если нет - хилт хороший способ из коробки быстро поднять инжект в VM.
источник
2021 February 08

NR

Nikita Rysin in Moxy – MVP библиотека под Android
Алексей Ершов
Гайд по миграции прочитайте в вики
Гайд использовал при миграции, все делал по нему.
В конечном счете получаю не null презентер через

@Inject
Provider<MyPresenter> presenterProvider;

@ProvidePresenter
MyPresenter providePresenter() {
   return presenterProvider.get();
}


Но теперь при обращении в презентере к viewState и его методам, описанных в указанном интерфейсе, методы во фрагменте не вызываются. По отладке глянул - getAttachedViews пустой (0 элементов)
источник

P

Pavel in Moxy – MVP библиотека под Android
kapt не забыли прописать в build.gradle?
источник

P

Pavel in Moxy – MVP библиотека под Android
Фрагмент унаследован от MvpAppCompatFragment?
источник

NR

Nikita Rysin in Moxy – MVP библиотека под Android
Pavel
kapt не забыли прописать в build.gradle?
implementation 'com.github.moxy-community:moxy:2.2.1'
kapt 'com.github.moxy-community:moxy-compiler:2.2.1'


стоит это
источник

NR

Nikita Rysin in Moxy – MVP библиотека под Android
Pavel
Фрагмент унаследован от MvpAppCompatFragment?
про это не видел нигде MvpAppCompatFragment
источник

NR

Nikita Rysin in Moxy – MVP библиотека под Android
Это часть moxy? При добавлении студия подсвечивает красным и не предлагает импорт
источник

P

Pavel in Moxy – MVP библиотека под Android
источник

P

Pavel in Moxy – MVP библиотека под Android
AndroidX module
If you're using AndroidX, you'll need a different implementation for MvpAppCompatActivity and MvpAppCompatFragment classes. Use this one:

implementation "com.github.moxy-community:moxy-androidx:$moxyVersion"
источник

NR

Nikita Rysin in Moxy – MVP библиотека под Android
блин, вот это то что было нужно)
источник

NR

Nikita Rysin in Moxy – MVP библиотека под Android
А совсем это из виду упустил
источник