Timur
У котлина есть же object, готовый синглтон
Aleksey
даггер, вм, синглтон и лень учить
Aleksey
все в одной куче, вах!
Aleksey
еще щепотка имплов
Кирилл
У котлина есть же object, готовый синглтон
он то есть да, но не с готовой имплементацией наблюдателя
Timur
Дагер муторный, мне больше koin подходит
Aleksey
А где готовая имплементации в vm?
мб лайфдата какая-нибудь?)
Кирилл
ну это конечно не часть vm, но используется с ней
Aleksey
livedata
так используй ее без вм и все ок
Mike
ну это конечно не часть vm, но используется с ней
давай всё же начнём с вопроса, что тебе нужно сделать)
Кирилл
наблюдаемый синглтон
Mike
наблюдаемый синглтон
нет, это уже XY problem. Наблюдаемый синглтон в отрыве от говнокода невозможен.
Timur
мб лайфдата какая-нибудь?)
Так она вообще существует отдельно от vm
Кирилл
сейчас я делаю это через хелпер который инициализирую в application и беру оттуда
Кирилл
Бля щас подумал а может сделать companion object с инстансом хелпера и удалить этот говно код (activity.application as XUY).workerHelper
Mike
ага, заменить на другой говнокод)
Кирилл
))
Timur
А вам вообще нравится livedata?
Timur
Задумка вроде интересная, но реализация через попец. Ошибки возвращать не удобно, разовых эвентов нет
Mike
Задумка вроде интересная, но реализация через попец. Ошибки возвращать не удобно, разовых эвентов нет
я задолго до лайвдаты работаю с обзёрваблами и могу с полной уверенностью заявить, что одноразовые и не нужны)
Timur
Смелое утверждение, а если ошибку надо показать один раз
Mike
Смелое утверждение, а если ошибку надо показать один раз
обычно ошибка — это состояние всего экрана)
Timur
покажи один раз, в чем трабл?
Трабл в том что livedata срабатывает при пересоздании активити/фрагмента
Timur
Допустим у тебя есть errorDialogLivedata
Timur
Ты подписался и ждешь
Mike
почему не удобно и что лучше?
Мне вот не нравится вендор лок к андроиду, я хочу шарить логику с десктопом на JavaFX. Лучше — Lychee
Timur
По мне MVP (Moxy) то что надо
Mike
MVP говно, Moxy говнище
Timur
Почему?
Mike
Почему?
ссылка выше
Mike
да ладно тебе впаривать свою библиотечку)
с чего бы это «да ладно мне»?
Сергій
Там код непонятно выглядит 🌚
Timur
ссылка выше
Простите но кажется Google рекомендует использовать retain в крайних случаях. Про configChanges тоже самое.
Timur
Вообще хранить поля во фрагменте такое себе
Nick
Каждый сам для себя определяет своё "такое себе" Все эти споры в большинстве своём бессмысленны
Dug
Простите но кажется Google рекомендует использовать retain в крайних случаях. Про configChanges тоже самое.
Гугл много чего рекомендует. Поэтому у них все приложения и работают через жопу
Timur
Но это все же его ОС.
Mike
Но это все же его ОС.
И? Что мешает гуглу, который сделал плохой application framework, делать плохую экосистему вокруг него?
Сергій
Timur
Допустим, но советы и аргументы в статье такие же нулевые
Dug
Пора в iOS
Dug
А вообще лучще на Бали, конечно
Кирилл
Dug
Сказаное
Timur
Больше похоже на подгорание пятой точки у автора
Mike
Допустим, но советы и аргументы в статье такие же нулевые
Нет, там вполне внятно написано, что Moxy создаёт баги. И описано, почему.
Сергій
Пора в iOS
там нас не ждут )
Timur
И где там реальные примеры багов?
Aleksey
Mike
И где там реальные примеры багов?
«В случае рестарта процесса никак не поможет. Даже наоборот: рекомендуется «очищать» состояние вью в onFirstViewAttach(), потому что после пересоздания процесса создастся новый презентер, а состояние View восстановится встроенными средствами Android.» Что не понятно?
Timur
Это не пример бага
Timur
Если процесс убит то он убит.
Mike
Это не пример бага
Пример: пользователь ввёл текст в текствью, после рестарта он вычистился в first view attach ради консистентности состояния.
Mike
Если процесс убит то он убит.
звучит логично, чёрт побери 🤔
Сергій
(но нет)
Ilya
Привет всем)
Mike
А че, звучит хайпово
Процесс мёртв. Да здравствует процесс!
Ilya
Странная проблема - при нажатии на поворот эмулятора он сам закрывается, в чём может быть проблема?
Timur
Вы хотите сказать что после убийства процесса андроид сам нормально востановит вьюшку?
Mike
Вы хотите сказать что после убийства процесса андроид сам нормально востановит вьюшку?
За всех нас не знаю, а вот я точно говорю, что стандартные вьюшки восстанавливают состояние, если у них есть айдишник.
Timur
Сорян но нет. У него это получается делать через раз
Timur
Если крутить экран, то да сохраняет
Сергій
Если процесс убит то он убит.
пример с которым работал я сам: экран заполнения профиля, юзер ввел все поля и потом когда осталось сделать фото на аватарку, твое приложение редиректит через startActivityForResult на стороннее приложение камери, пока камера открыта на экране, система может убить(у меня был этот случай и не редко) приложение что ее запустило, а потом восстанавливает весь стек, и все данные после возвращения результата. Убивается именно процесс, а потом восстанавливается.
Mike
Сорян но нет. У него это получается делать через раз
Всё зависит от радиуса кривизны рук. У меня работает.
Сергій
и тут нельзя терять данные что ввел пользователь