Size: a a a

Cicerone Chat (RUS)

2021 February 25

AT

Alexander Taran in Cicerone Chat (RUS)
Evgeny GooDi
Возможно не раз спрашивали, но... Есть актуальный сэмпл использования чичероне с мввм?
источник

EG

Evgeny GooDi in Cicerone Chat (RUS)
Мерси
источник

K

Konstantin in Cicerone Chat (RUS)
vorobyoff
Привет, можно ли, используя чичерони, вызывать navigateTo() и подобные из другого потока, не ui-ного?
у нас возникали проблемы при активном навигаторе, т.к. router.navigateTo(...) при активном SupportAppNavigator'е идет в него исполнять applyComands(...), в которой первым делом дергается fragmentManager.executePendingTransactions(), который должен вызываться из ui-потока (иначе кидает IllegalStateException кажется)
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
Скорее всего проблема у вас в коде. Навигатор в холдер когда светится?
источник

K

Konstantin in Cicerone Chat (RUS)
Konstantin Tskhovrebov
Скорее всего проблема у вас в коде. Навигатор в холдер когда светится?
В активити навигатор сетится в холдер в onResumeFragments(), ремувится в  onPause()
Во флоуфрагментах навигатор сетится в холдер в onResume(), ремувится в  onPause()
Холдеры в активити и флоуфрагментах разные; версия Cicerone 5.1.0

Пока не особо понимаю, как сет навигатора в другое время решит проблему; я вижу такую последовательность вызовов:
router.navigateTo(MyScreen) —> Router.executeCommands(...) —> CommandBuffer.executeCommands(...) —> (при засеченном навигаторе) Navigator.applyCommands(...) —> (по дефолту юзаем SupportAppNavigator) SupportAppNavigator.applyCommands(...) —> FragmentManager.executePendingTransactions(), а у FragmentManager.executePendingTransactions() написано, что он должен вызываться только из mainThread (и он ожидаемо кидает IllegalStateException в остальных случаях)
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
а, само собой можно только из UI треда работать с чичероне
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
я думал в чем-то другом проблема
источник

K

Konstantin in Cicerone Chat (RUS)
нет, "проблема" (на самом деле фича) только в этом, просто отвечал на вопрос выше о том что будет если навигироваться из других потоков (для себя только недавно это обнаружил после года с Cicerone в проде, при попытке поудалять все переключения на mainThread во вьюмодели)
подумываю написать обертку для роутера, которая бы проверяла текущий поток и при необходимости не синхронно  дергала навигацию, а постила сообщение в mainThread (правда тут уже могут возникнуть какие-нибудь неожиданные эффекты из-за асинхронности)
источник

v

vorobyoff in Cicerone Chat (RUS)
Konstantin Tskhovrebov
а, само собой можно только из UI треда работать с чичероне
Странно, я в moxy, в билдере launch, с диспетчером IO переключал, сегодня так тестил свою теорию
источник

v

vorobyoff in Cicerone Chat (RUS)
Вызвал navigatTo
источник
2021 February 26

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
В месте вызова навигации залогируйте имя треда
источник

ЕК

Евгений Кузовкин... in Cicerone Chat (RUS)
vorobyoff
Странно, я в moxy, в билдере launch, с диспетчером IO переключал, сегодня так тестил свою теорию
Теоретически, вы могли вызвать из IO команду на роутере, пока не было приаттаченного навигатора. В таком случае команда просто попадёт в буфер и будет выполнена уже из main thread в момент вызова setNavigator()
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
Напоминаю, что СЕГОДНЯ (26.02.2021) в 21:00 в канале @android_broadcast_talks будет голосовой чат, где я немного расскажу про Модо и буду отвечать на любые ваши вопросы 🙃
Жду всех интересующихся!
Набрасывайте топики! Пока список такой:
- Чичероне деприкейтится?
- А почему не новая версия Чичероне, а новая библиотека?
- Для чего там мультиплатформа?
- Стоит ли переезжать с Чичероне?
- Насколько Модо готова к проду?
- Какие дальнейшие планы?
- Что такое UDF?
источник

ЕК

Евгений Кузовкин... in Cicerone Chat (RUS)
- Как интегрируется с Flow фрагментами?
источник

АЕ

Алексей Ершов... in Cicerone Chat (RUS)
Подойдёт ли для навигации на чистом Compose вообще без фрагментов?
источник

S

Silent829 in Cicerone Chat (RUS)
Konstantin Tskhovrebov
Напоминаю, что СЕГОДНЯ (26.02.2021) в 21:00 в канале @android_broadcast_talks будет голосовой чат, где я немного расскажу про Модо и буду отвечать на любые ваши вопросы 🙃
Жду всех интересующихся!
Набрасывайте топики! Пока список такой:
- Чичероне деприкейтится?
- А почему не новая версия Чичероне, а новая библиотека?
- Для чего там мультиплатформа?
- Стоит ли переезжать с Чичероне?
- Насколько Модо готова к проду?
- Какие дальнейшие планы?
- Что такое UDF?
источник

L

Little Panda 🐼 in Cicerone Chat (RUS)
Алексей Ершов
Подойдёт ли для навигации на чистом Compose вообще без фрагментов?
Если да, подойдет. То когда можно ожидать реализацию?
источник

ВБ

Влад Баженов... in Cicerone Chat (RUS)
Konstantin Tskhovrebov
Напоминаю, что СЕГОДНЯ (26.02.2021) в 21:00 в канале @android_broadcast_talks будет голосовой чат, где я немного расскажу про Модо и буду отвечать на любые ваши вопросы 🙃
Жду всех интересующихся!
Набрасывайте топики! Пока список такой:
- Чичероне деприкейтится?
- А почему не новая версия Чичероне, а новая библиотека?
- Для чего там мультиплатформа?
- Стоит ли переезжать с Чичероне?
- Насколько Модо готова к проду?
- Какие дальнейшие планы?
- Что такое UDF?
круто, буем ждать.
у меня вопрос самый болезненный для всех, как будем в модо решать вопрос с несколькими стеками навигации? судя по всему, как и раньше в чичероне, а хотелось бы чего-то поэлегантнее
источник

KT

Konstantin Tskhovreb... in Cicerone Chat (RUS)
да, и мне есть что про это рассказать)
источник

AK

Alexey Kalyaganov in Cicerone Chat (RUS)
Блин, запись бы послушать
источник