Ilya
используй другую версию loadUrl, ту, что принимает кодировку
так уже сделано webView.loadData(html, "text/html", "UTF-8");
Mike
так уже сделано webView.loadData(html, "text/html", "UTF-8");
Тогда на странице надо править. Либо в заголовках, либо в мета-тегах.
Alexander
d
Подскажите по Room. Нужно реализовать наследование. Есть класс MyEntity, есть производный MySpecificEntity. Что бы рум сохранял их, в каждом должно быть поле id, как я понял. Тогда получается нужно избавиться от extends ?
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
Может быть стоит код показать?)
Vladimir
Шибко большой список?
да нет, в пределеах 2-х десятков позиций
Vladimir
Может быть стоит код показать?)
Сейчас вырезки на гист покидаю
Константин
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
Vladimir
Именно формирование списка, или ответ от сервера 2-3 секунды?
Затрудняюсь ответить однозначно. Я использую ретрофит2 и просто предполагаю, что если два приложения обращаются к одному и тому же ресурсу, то скорость их реакции должна быть одной и той же
Vladimir
Ответ : RecyclerView
использую рецайклервью дл я списка
Vladimir
Вот зависит от запроса на самом деле, как минимум надо поставить logginginterceptor надотпоставить
Vladimir
есть у меня такая шняга
Ну там пишится время
Евгений
использую рецайклервью дл я списка
а ресайклер случайно не лежит в scrollview/nestedscrollview?)
Amir
сейчас код переделаю немного и посмотрю
D/OkHttp: <-- 200 OK site (249ms). Если HttpLoggingInterceptor стоит, можешь в логах посмотреть просто
Vladimir
Нарооод!!! А можно как-то продебажить приложение, скачанное из гуглплея?
Vladimir
Студия его почему-то не видит
Amir
Нарооод!!! А можно как-то продебажить приложение, скачанное из гуглплея?
http://www.javadecompilers.com/apk https://www.apkdecompilers.com/ Ну если исходников нет, можно попробовать код посмотреть
Amir
Студия его почему-то не видит
а что значит студия не видит?
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
я просто не сталкивался с таким
Fearless
Привет всем! Кто нибудь знает, можно ли в Joda Time получить формат времени девайса? 12 или 24 часовой
Artem
именно из маркета надо, а то почему-то в дебаге всё работает, а в релизе - не всё
загруженные в маркет не доступны для отладки, флаг debugable
Сергій
Нарооод!!! А можно как-то продебажить приложение, скачанное из гуглплея?
Нельзя, релизный билд не dubugable. Но можно например поставить на телефон прошивку собранную с дебаг флагом. Тогда можно будет дебажить все приложения
Сергій
да, уже подсказали, спс!
Поставь Lineage OS и дебаж )
Gleb
ребят, у кого есть пдф котлин в действии?
Konstantin
Ребята, кто-то сталкивался с тем, что в onStartCommand в Service приходит intent = null, вопреки возвращаемому флагу в этом методе START_NOT_STICKY ?
Vladimir
Нарооод!!! Почему после загрузки в гуглплей новой версии имеющаяся на смартфоне старая не обновляется? И гуглплей не показывает наличие обновления, вообще показывает старую версию
Askar
Нарооод!!! Почему после загрузки в гуглплей новой версии имеющаяся на смартфоне старая не обновляется? И гуглплей не показывает наличие обновления, вообще показывает старую версию
Зачем каждый раз (да и вообще) писать «нароооод»? Лучше сразу суть проблемы излагать, имхо. Спасибо хоть одним сообщением отправляешь)
Dmitrii
Она обновляется около часа
qurabay
Getdrawable error
qurabay
Кто знает
qurabay
Не работает 19 sdk