Mike
Alexander
d
Подскажите по Room. Нужно реализовать наследование. Есть класс MyEntity, есть производный MySpecificEntity. Что бы рум сохранял их, в каждом должно быть поле id, как я понял. Тогда получается нужно избавиться от extends ?
Alexander
d
d
От него два производных
d
Как быть?
Alexander
У каждого наследника свой PrimaryKey, для MyEntity не нужно. Наследники будут сохраняться в разные таблицы.
d
Хм, а базовый выходит вообще не хранится? Понятно, спасибо)
Alexander
Базовый же абстрактный, как вы создадите его объекты?)
Alexander
Рассматривайте наследование, как расширение базового класса. Там и ключевое слово extends - расширяет.
d
Да, немного затупил, спасибо!
Alexander
Попробуйте добавить useCompatPadding(true), если не получится, то
установите для карточки марджин.
Alexander
В доках нашел:
If you want to change elevation dynamically, you should call setMaxCardElevation(float) when CardView is initialized.
Alexander
А почему для 21+ вы используете setElevation вместо setCardElevation?
Alexander
Так может оно и для 21+ не пашет?)
Alexander
Просто setElevation это метод не cardView, а его родителя
Alexander
View или ViewCompat не знаю
Сергій
Ох, только в коде все размеры в пикселях
Сергій
8 пикселей, не dp, имей ввиду
Сергій
Что такое 8 пикселей для дисплея с 480 dpi ))
Сергій
Конечно
Сергій
dp тоже
Сергій
Не велосипедничай, уже есть в системе )
Сергій
Сделай просто утилитарный метод на TypedValues.applyDimention(value, type)
Сергій
Только наоборот, pixelsToDp ))
Сергій
А не всё правильно. Это я уже туплю, пол второго ночи 🌚
Vladimir
Нароооод!!! Подскажет кто как бороться с такой проблемой:
есть приложение под iOS и под Андроид - обращаются к одному и тому-же серверу, но на iOS список формируется моментально, а под Android - пару-тройку секунд.
Константин
Шибко большой список?
Nikita
Nikita
Может быть стоит код показать?)
Константин
https://habr.com/post/133575/
Оптимизация производительности вашего собственного адаптера
Создание Java объектов для каждого элемента — это увеличение потребления памяти и временные затраты. Как уже говорилось, Андроид стирает элементы (виды) вашего списка, которые уже не отображаются и делегируют управление ими в метод getView() через параметр convertView.
Ваш Адаптер может использовать этот вид и избежать «раздутие» Шаблона для этого элемента. Это сохраняет память и уменьшает загрузку процессора.
В вашей реализации вы должны проверять convertView на наличие содержимого и переназначать его, отправляя новые данные в существующий Шаблон, если convertView не пустой.
Наша реализация так же использует модель ViewHolder. Метод findViewById() достаточно ресурсоемок, так что нужно избегать его, если в нем нет прямой необходимости.
ViewHolder сохраняет ссылки на необходимые в элементе списка Шаблоны. Этот ViewHolder прикреплен к элементу методом setTag(). Каждый Вид может содержать примененную ссылку. Если элемент очищен, мы можем получить ViewHolder через метод getTag(). Это выглядит нагруженным, но, на самом деле, работает быстрее, чем повторяющиеся вызовы findViewById().
Обе техники (переназначение существующих видов и модель ViewHolder) увеличивают производительность примерно на 15%, особенно на больших объемах данных.
Nikita
https://habr.com/post/133575/
Оптимизация производительности вашего собственного адаптера
Создание Java объектов для каждого элемента — это увеличение потребления памяти и временные затраты. Как уже говорилось, Андроид стирает элементы (виды) вашего списка, которые уже не отображаются и делегируют управление ими в метод getView() через параметр convertView.
Ваш Адаптер может использовать этот вид и избежать «раздутие» Шаблона для этого элемента. Это сохраняет память и уменьшает загрузку процессора.
В вашей реализации вы должны проверять convertView на наличие содержимого и переназначать его, отправляя новые данные в существующий Шаблон, если convertView не пустой.
Наша реализация так же использует модель ViewHolder. Метод findViewById() достаточно ресурсоемок, так что нужно избегать его, если в нем нет прямой необходимости.
ViewHolder сохраняет ссылки на необходимые в элементе списка Шаблоны. Этот ViewHolder прикреплен к элементу методом setTag(). Каждый Вид может содержать примененную ссылку. Если элемент очищен, мы можем получить ViewHolder через метод getTag(). Это выглядит нагруженным, но, на самом деле, работает быстрее, чем повторяющиеся вызовы findViewById().
Обе техники (переназначение существующих видов и модель ViewHolder) увеличивают производительность примерно на 15%, особенно на больших объемах данных.
Понятно
Nikita
Ответ : RecyclerView
Amir
Amir
Vladimir
Вот зависит от запроса на самом деле, как минимум надо поставить logginginterceptor надотпоставить
Vladimir
Vladimir
Vladimir
Vladimir
Vladimir
Нарооод!!! А можно как-то продебажить приложение, скачанное из гуглплея?
Vladimir
Студия его почему-то не видит
Vladimir
Vladimir
Пытаюсь подключиться из проекта, открытого в студии, к запущенному процессу на устройстве, а студия его почему-то не видит
Vladimir
процесс на устройстве запущен после установки приложения из гуглплея
Vladimir
в гуглплей загружен ранее из этого проекта
Vladimir
в смысле, апкашка сгенерирована из этого проекта
Amir
А на эмуляторе нельзя запустить, или именно из маркета надо логи посмотреть?
Vladimir
именно из маркета надо, а то почему-то в дебаге всё работает, а в релизе - не всё
Amir
можешь посмотреть это
https://stackoverflow.com/questions/30962200/how-do-i-view-android-logcat-output-from-an-exported-apk-running-on-a-physical-d/30962222
https://stackoverflow.com/questions/42117674/how-to-debug-an-apk-installed-from-play-store-without-deleting-saved-user-data
Amir
я просто не сталкивался с таким
Vladimir
Fearless
Привет всем! Кто нибудь знает, можно ли в Joda Time получить формат времени девайса? 12 или 24 часовой
Artem
Vladimir
Vladimir
Vladimir
Gleb
ребят, у кого есть пдф котлин в действии?
Vladimir
Konstantin
Ребята, кто-то сталкивался с тем, что в onStartCommand в Service приходит intent = null, вопреки возвращаемому флагу в этом методе START_NOT_STICKY ?
Vladimir
Нарооод!!! Почему после загрузки в гуглплей новой версии имеющаяся на смартфоне старая не обновляется? И гуглплей не показывает наличие обновления, вообще показывает старую версию
Askar
Dmitrii
Vladimir
Dmitrii
Она обновляется около часа
qurabay
Getdrawable error
qurabay
Кто знает
qurabay
Не работает 19 sdk