Jamal
Jamal
почему красненькие ?
Сергій
Egor
в гит не добавлено
Kanstantsin
или свн )
Kanstantsin
хотя может уже и никто не работает с свн )
Jamal
аааа
Jamal
точно
Jamal
спасибо
Anonymous
или hg
Denis
по поводу Doze, foreground service не всегда панацея
проводили эксперимент, fg сервис получал координаты раз в n секунд, и отправлял их на сервер раз в m минут
так вот когда телефон положили на стол и благополучно о нём забыли на время, никаких обновлений локации и отправки в эти часы не было
когда взяли телефон с собой (т.е. он начал движение), и обновления локации и отправка возобновились
Dug
Поэтому надо юзать JobDispatcher наверное
Сергій
Ivansuper
Ребят, есть люди, которые пережили определенный опыт с ViewHolder и LiveData?
Сергій
Вернее тротлит
Ivansuper
Ой
Ivansuper
ViewModel
Ivansuper
(голова пухнет)
Mike
Ivansuper
Фиг его знает. Я встрял с мультитиповыми списками и подходом, который предлагается при использовании ViewModel и LiveData
Anonymous
А что там? то есть надо во ViewHolder провести ViewModel и LiveData или что?
Ivansuper
Допустим, если ты хочешь отобразить список цветов, который берешь из БД, то проблем нет. Но если ты хочешь в одном списке подтянуть категорию цветов, цвета, категорию текстур, текстуры, etc.
Ivansuper
Если оставить на совесть активности или фрагмента собирать эти данные для пополнения списка нормального, то чем больше типов, тем больше активность раздуется
Ivansuper
Иначе ViewModel пухнет раковой опухолью от другой логики подготовки данных и перемешивается с работой адаптера
Ivansuper
Можно подойти с той стороны, что список будет пополняться частями по мере доступностей категорий, но хотелось просто получить все данные сразу
Anonymous
Можно в список пихать один класс в котором цвета, текстуры итд, и во вьюхолдере решать как отображать
Ivansuper
Я думал об этом — подождать во ViewModel все вместе, вернуть LiveData<Object> и проверять тип объектов данных, на основе чего собрать адаптер
Ivansuper
Но тыканье вслепую в чистый Object выглядит уныло
Ivansuper
Если попытаться отойти от чистого Object, опять навевает каким-то overengineering'ом
Mike
sealed class в Kotlin
Ivansuper
Не котлин
Mike
а вообще, что-то я ещё не видел гетерогенных списков без говнокода
Ivansuper
sealed class в Kotlin
Это те, которые позволяют иметь типизацию из ограниченного набора вариантов или что-то такое?
Mike
Ivansuper
Видел в некоторых местах описания с логикой каждому View свой ViewModel. По итогу на каждый тип элемента списка падает свой ViewModel, а само окно с интерфейсом держится на отдельном ViewModel
Ivansuper
Но это уже своего рода оверхед
Ivansuper
Разве что для громоздких приложений
Mike
Mike
Ivansuper
Окей
Ivansuper
Ребят, если кто-то прочтет и будут идеи — стучитесь в ЛС
Ivansuper
Проблема с абстрагированием View от ViewModel, в частности стремление избавить ViewModel от работы с адаптером и атомарная ( ? ) подготовка списка с разными типами
Ivansuper
Понятен факт, что в 80% мобильные приложения разрабатываются без последующих обязательных задач по их портированию, что допускает подтекание одного слоя архитектуры в другой в виду отстутствия требования жесткой абстракции для легкого переноса на другие платформы, но просто ищу максимально элегантный подход
Max
как можно деобфусцировать firebase классы, что-бы посмотреть в каком месте там возникает ошибка?
Ivansuper
Mike
Ivansuper
Это просто рассуждение. Например написать код так, чтобы можно было бизнес логику легко перенести на iOS или тот же Windows (махнул, но тем не менее)
Mike
я чаще встречал, что размазывание логики по слоям непонятного назначения только ухудшает понимание и допиливание
Ivansuper
Ладно, нужно поесть. Авось идеи придут.
Ivansuper
Но, кстати, если честно, сведение данных от нескольких LiveData средствами из коробки намного более неудобное чем с использованием RxJava. По крайней мере мне так показалось вчера ночью
Сергій
Сергій
просто попробуй обновить библиотеку firebase(или наоборот)
Max
даже если деобфусцировать, что это тебе даст?
мы юзаем либу для пушей от каких-то чуваков
падает на андроид 8+ при получении этого пуша
не могу ж я им скинуть тупо трейс и всё
firebase стоит последний
Спускал версию максимум до того момента как нужно дальше уже понижать версию гугл сервисов
на продакшене понижать версию сервисов вряд-ли хорошая идея)
Сергій
Max
Max
я там рылся
но без вменяемого трейса я хз где искать
Сергій
зачем либа для пушей? )
Max
я пришёл - так было)
Max
они типа умеют в вайбер слать)
Сергій
🙄
Ivan P.
Max
ну мне так обьяснили почему именно они а не написать на cloud messaging
Max
потому что они умеют в рассылки в вайбер
Сергій
заведи им ишью
Max
тут где-то контакты были, напишу им так
а то с каждым днём на oreo телефонов всё больше и крашей в итоге всё больше и больше)
Ivan P.
Nikita
Всем привет, был ли у кого баг с клавиатурой, которая отбражается после выхода приложения из бэкграунда (до этого делал requestFocus, при выходе из бэкграунда он не отрабатывает как и должен)
Anonymous
Из какого пакета, лучше использовать JsonObject?
Anonymous
org.json или com.google.gson
Mike
Anonymous
Опять ваш стеб)
Chriz
Всем ку, по архитектуре МVVM где лучше всего управлять фрагментами ?
David
Опять ваш стеб)
тут разница в том как и зачем вы делаете сериализацию