Anonymous
А опираться на мнение в "Какой-то книге" разве лучше?
Если мнение актуальное и идеологическое, то почему бы не взять его на вооружение?
Aleksey
Если мнение актуальное и идеологическое, то почему бы не взять его на вооружение?
Потому что шанс интерпретировать чужое мнение по-своему зашкаливает
Alexey
вообще для чистоты кода создание активити нужно выносить в отдельную сущность, ребята выше как раз ругаются как лучше это сделать 🙂
Ну у меня просто в PendingIntent помещается activity и в NotificationBuilder передается. Я думаю одним методом ограничиться разумно.
Anonymous
Dmitriy
хз в книге какой - то написанно было...
Просто вообще ваши аргументы звучат странно. Во первых обратная совместимость между мажорными версиями не сильно то и обязательна. Во вторых, если вы в проекте используете старую версию библиотеку без поддержки Х то наверное и Х у вас в проекте не было, если вы переводите проект на Х, то логично переводить и либы которые его теперь используют. Если вы пишете новый проект, затягиваете старую версию библиотеки без поддержки Х, а потом через пол проекта понимаете что ее нужно переводить на новую версию без обратной совместимости - то это проблема исключительно в вас
Denis
раньше да
Тогда она нарушает тот же принцип. А вообще нет смысла говорить об этом принципе, так как ты, как минимум, используешь Android Framework
Anonymous
Потому что шанс интерпретировать чужое мнение по-своему зашкаливает
Ну сорян что у меня память не может запомнить дословно целую страницу книги от точки до точки. Чтобы цитаты тебе сюда писать. Если ты суть слов не понимаешь то, это твои проблемы
Dmitriy
Тем более что в чичероне, все изменения - это замена констант скринов на объекты, и отказ от не самых полезных команд(от 1 или двух)
Dmitriy
какая часть
Anonymous
пиши в личку, флудом попахивает
И из-за андроид х дофига где неудобства были
Например?
Даже в Мокси
Пол года спрашивали об андроид х
Чувак, это опен сорс, ты можешь фиксить что тебе надо
Anonymous
Даже в Мокси
А чо там? там проект не ломали, там просто перевели support в X и все
Anonymous
все методы и все что было осталось. ЧТо собственно и правильно
Нахрена тебе новая
Там был рефакторинг который сделал либу лучше
Anonymous
Ну так оставайся на старой версии
Что и сказалось на хорошем фидбеке к Моксам. Что не сказать про чичероне. Блин зайди в гитхаб в issue почитай отзывы англичан, будто я один такой кот с этим столкнулся. Ты там Hello World до сих пор пишешь чтоли
Чичероне отличная лаконичная либа
И легко расширяется и редактируется в отличие от нав компонента
Я оставался на старой версии когда лень было рефакторить и не вижу в этом проблем
Anonymous
пфф хуже чем навКомопнент скажешь тоже. Возми да кастомизируй нав и все дела
Unat
Плюсую за чичерон, отличная библиотека и простая как топор
пфф хуже чем навКомопнент скажешь тоже. Возми да кастомизируй нав и все дела
Возьми скопируй пару классов и поменяй импорты на Андроидх, делов то
Если тебе надо старая и Х
Anonymous
КастомНавКомпонент это самая норальная вещь которая гугл сделала и инструменты для работы есть все необходимые. Уже 4 проекта собрал на них.
Или вообще джетифаером файл Либы и подключи
Konstantin
ухх пятничкой пахнуло
Konstantin
прям никуда без эмоциональной разрядки )
Anonymous
Возьми скопируй пару классов и поменяй импорты на Андроидх, делов то
Да юзай ты свою чичероне, остань от меня уже)), я сказал что чичероне мне не нравится, я больше за NavComponent кастомизированный
Вот примерно в двух словах
Anonymous
Котлин лучше, чем Java...
Sergey
Такой вопрос, а админ может себе РО дать?
Sergey
чисто технически
Sergey
давай ограничимся первым пунктом просто
Вениамин
Всем доброго времени суток! Возникли вопросы с MVVM, читал в разным местах, но даже примеры от Android показались какими-то мутным. Вырезка статьи из хабра "Компонент ViewModel — предназначен для хранения и управления данными, связанными с представлением, а заодно, избавить нас от проблемы, связанной с пересозданием активити во время таких операций, как переворот экрана и т.д. ". Управление данных связанных с представлением... Здесь речь идет только о том что хранится в таблицах? Метод onNavigationItemSelected и переключения по фрагментам относится к данным или должен располагаться в классе фрагмента?
Дмитрий
Народ, привет! Подскажите. Есть проект Room и RxJava. Иногда проявляется проблема, почему-то перестают корректно работать выборки из БД. Это выражается в том, что select выполняется, но не возвращает данные. При этом точно такой селект выполненный «локально» к этой же БД (в stetho) возвращает корректно данные. В отладке проваливаюсь до сгенереных Room реализация методов интерфейса DAO и уже оттуда ничего не возвращается, т.е. кеширования на уровне приложения не может быть. Куда можно копать и что проверять?
Evgeny
Рестартни бд перед запросом
Дмитрий
Рестартни бд перед запросом
Это как? Если рестартануть все приложение, то становится нормально. Но проблема плавающая и я не могу понять почему она иногда возникает.
Mike
Рестартни бд перед запросом
Рестартануть SQLite? Это троллинг?
Дмитрий
Проваливайся дальше, непосредственно к SQLite :)
Ну я проваливаюст до курсора и он реально не возвращает данные.
Mike
Ну я проваливаюст до курсора и он реально не возвращает данные.
надо найти разницу между кодом, который выполняется из Stetho, и кодом в приложении
𝔇𝔢𝔫𝔦𝔰
Господа, подскажите пожалуйста какие виджеты используются в данном проекте? На вскидку вижу что построено на фрагментах и с использованием CardView и RecyclerView. Ну в основном? Я прав? Вот сам макет https://www.figma.com/proto/f6YB7blydYxG5zzcMKmEuNil/Connect-app?node-id=16%3A92&viewport=643%2C168%2C0.20453524589538574&scaling=scale-down&fbclid=IwAR2n3gqMxRYJ92wmM-yvqE30cTq9n_toTmEAqOCXiL8QVYw9pKXYMBC_8QM&redirected=1
Alexander
Благодарю за ответ! Единственное, возникло недопонимание. А если нажатие и есть логика, т.е. переключение по item?
Нажатие не может быть логикой, нажатие это сигнал, который, по идее, нужно отправить в ViewModel, которая примет решение о том, куда переходить и изменит соответствующее поле у себя (напр. LiveData destination), на которое подписана View, и при изменении получает колбэк соответствующий, и переходит по этому destination. Как-то так. Но если приложение простое, я бы не заморачивался
Alexey
Отправляю PendindIntent с сервисом в notificationBuilder.setDeleteIntent(pendingIntent). Сервис создался один раз и висит в памяти, это нормально или как то останавливать нужно когда срабатывает delete intent? То есть свапнул нотификацию, сервис отработал, затем уничтожился и так на каждую нотификацию.
Vitaly
Почему вместо массивов Object не реализован массив из E ? Это стандартная реализация ArrayList в Java
Mike
Почему вместо массивов Object не реализован массив из E ? Это стандартная реализация ArrayList в Java
Потому что это добавил unchecked cast'ов и не принесёт пользы. new E[] нельзя же
Alexey
И еще заметил что когда сервис создан и я закрываю приложение, у меня приложение крашится с ошибкой
Vitaly
Почему вместимость списка по умолчанию 10, а на деле создаётся массив вместимостью в 0 элементов?
Vitaly
с чего ты это взял?
Потому что создаётся массив new Object[0]
Dj
Потому что создаётся массив new Object[0]
А ты условие внимательно посмотрел?
Sergey
А ты условие внимательно посмотрел?
Причем тут условие если он про конструктор без аргументов?
Alexander
Почему вместимость списка по умолчанию 10, а на деле создаётся массив вместимостью в 0 элементов?
capacity и количество элементов в массиве это разные вещи. Capacity это количество, так сказать, зарезервированных в мемори ячеек для элементов
Dj
Причем тут условие если он про конструктор без аргументов?
Быстренько у себя глянул реализацию ArrayList, как оказалось он там динамически расширяет массив до 10 элементов, если он был пустой в методе add(E e). А почему он в конструкторе инициализирует таким образом, я сам хз
Sergey
правильный ответ был что капасити и объем не одно и то же
Anonymous
Пацаны. Вот есть srp итд, принципы не позволяющие появлению огромных god object. Какие есть ограничения с обратной стороны? Ведь есть другая крайность, много классов с одним методом. Очевидно это плохо, навигация по коду, ресурсы, нагрузка на di итд. Что ограничивает с этой стороны?
Sergey
алгоритмы всякие почитайте про структуры данных, кому интересно
Leonid
Я видимо туплю А куда будут вставляться элементы списка тогда?
ArrayList это массив под капотом, если размера не хватает (или привышает порог, не помню как называется), то придобавлени нового элемента создается массив размеров х2 и в него копируется исходный
Sergey
алгоритмы всякие почитайте про структуры данных, кому интересно
меня недавно послали после собеса яндекса потому что плохо с этим)