⬤ vitaly
Ребят, есть ли не изобилующий подводными камнями способ юзать дотнетовские библиотеки в проекте на котлине?
Max
какой параметр в студии отвечает за порядок вью в XML ? при реформате кода вьюхи меняются местами
Александр
Settings - Codestyle -> set from -> Android
Александр
Мб поможет
Александр
https примерно с восьмёрки вроде
Flogiston
А да, где-то там
Сергей
Вроде с 9, если очень надо использовать http то надо указать флаг в манифесте, и все ок будет
Сергей
https://stackoverflow.com/questions/51902629/how-to-allow-all-network-connection-types-http-and-https-in-android-9-pie
Александр
Без логов это забей
padmitriy
а подскажите как описать получение geoJson в списке объектов с бэка. Для гуглокарт есть GeoJsonLayer, который принимает стандартный JSONObject, вот как мне этот object описать в модели для Gson?
Anonymous
Daniil
Всем привет! Есть у кого ссылки на статьи/доклады про pure java domain модули на больших проектах? Не могу ничего стоящего нагуглить
Daniil
Так о чем там рассказывать? :)
Как организовать зависимости и di. Ну и как это повлияло на проект - костыли/подводные камни
Daniil
кажется кто-то подключал андроид зависимости в java модуль, вспомнить бы только кто и зачем для полноты картины)
Denys
Подключать pure kotlin/java модули проще, поскольку у них нет зависимости от платформы. Каких-то специфических рекомендаций не видел, но так многие делают. К тому же, такие модули быстрее компилируются.
Daniil
Подключать pure kotlin/java модули проще, поскольку у них нет зависимости от платформы. Каких-то специфических рекомендаций не видел, но так многие делают. К тому же, такие модули быстрее компилируются.
Если по чистой архитектуре это модули с entity и interactor. Проблема как раз в том, что нужны платформенные зависимости и хочется понять как лучше подойти к их предоставлению
Daniil
Хочется именно найти собранный в одно место опыт людей, чтобы на те же самые грабли не наступать
Сергій
там поклоняются клин архитектуре
Daniil
https://t.me/Android_Architecture
Спасибо, продублировал туда
Andrii
ROOM DB -> можно ли получить строчку, сортируя ее не по примитиву? пример: @Query("SELECT * FROM statistics WHERE exType = :type") Stat getStatByType (Type type)
Andrii
Как вы в SQL запишите объект?
в ROOM есть же @TypeConverter записывается, читается, все хорошо а вот поиск по объекту - тут я застрял, в доках не нашел
Anonymous
Добрый день Мне нужно сделать службу котороя создает и слушает веб сокет соединение и будет показываеть уведомление пользователям, важно чтобы сервис был не явным и принималь уведомление от GO сервера. Сейчас когда я делаю сервис не явным, на устройствах android 8 и выше. Система убивает сервис и я не могу получать сообщение по сокету . — Firebase пуш не использую. Кто нибуть, делел сокет на сервисе чтобы был стабильный connection, мотете дельные ссылки скинуть по этому вопросу?
Andrii
а как он в базе сохранен вы смотрели?
сейчас посмотрю - 99% что текстом
Дмитрий
сейчас посмотрю - 99% что текстом
А теперь представьте, что база данных ничего не знает о вашем объекте а вы просите ее отфильтровать поля по нужному типу
Дмитрий
Telegram делал
с обходом doze mode?
Mike
с обходом doze mode?
я не в курсе, просто это единственный мессенджер, который работает)
Дмитрий
ну исходники-то у него открыты)
Artem
Всем привет! кто-нибудь реализовывал кастомную клавиатуру? Как правильно сделать переключение языка и, например, shift?
Mike
ну исходники-то у него открыты)
ну раньше он в дестрое сервиса слал себе броадкаст чтобы поднять сервис. Но тогда таргет был невысокий
Co(n)stantine👨‍🔬
https://github.com/blackcj/AndroidCustomKeyboard
Artem
тэкс, это все через inputMethod т.е. можно выбрать и другую клавиатуру, насколько я понял. А если мне нужно чтобы была _только_ моя? Я пошел по-пути когда в разметку добавляется android.inputmethodservice.KeyboardView
Artem
и все бы ничего, но когда меняешь клавиатуре layout он почему-то неправильно инфлейтится (если сменить обратно на первый то он почему-то норм), а держать 4 клавиатуру мне как-то не хочется
Евгений
Подскажите пожалуйста, можно ли запретить перенос части текста? Т.е. вот как на скрине - нужно запретить перенос номера телефона.
Сергій
используй non breakable space тогда
Mike
и неразрывные дефисы, потому что обычные дефисы — разрывные
Andrii
А теперь представьте, что база данных ничего не знает о вашем объекте а вы просите ее отфильтровать поля по нужному типу
Спасибо что подтолкнули к правильному ответу БД содержит текст, сортировать надо тоже с помощью текста загвоздка была в конвертере
Ilya
Всем привет, можете помочь, пробую получить реальный адрес image из YnadexDisk через getContentResolver().query(imageUri, {MediaStore.Images.Media.DATA}, null, null, null); только курсор, который вернулся не содержит необходимые мне колонки "data"
Ilya
как можно ещё получить реальный путь до файла?
Kirill
подскажите, как в Kotlin можно сравнить 2 массива. чтобы массив (2,3,4,1) содержал (1,2,3) пытался вот так, но неправильно, а гугл толкогого не выдал)) infix fun <T> Collection<T>.sameContainsWith(collection: Collection<T>?) = collection?.let { this.size <= it.size && this.containsAll(it) }
Kirill
содержал
Alexey
так как и в жабе
Kirill
1,2,3 и там и там есть
neikist
1,2,3 и там и там есть
Ты главное это равенством не называй
Kirill
neikist
так у меня так и сделано, но возвращаетfalse
У тебя сделано наоборот. Ты собственно и реализуешь containsAll
Александр
Мб кто знает. У меня биндинг при сборке пытается собрать BindingImpl для уже несуществующего layout, у него это конечно не получается и он падает нах с кучей ошибок. Что делать? Layout 100% удалён и в проекте не встречается. clean/rebuild/invalidate cache - делал.
Kirill
У тебя сделано наоборот. Ты собственно и реализуешь containsAll
а все, разобрался) this и it перепутал при сравнении размеров)
Artur
Привет, сталвкивлася кто с aar своими? Подключаю туда либу, с этой либы юзаются аттрибуты её для лайута, потом собираю aar и подключаю к проекту, в итоге этих атрибутов невидно после подключения
Kotor
Привет. Если несколько типов View в адаптере (horizontal_view, full_view, vertical_view). у всех одинаковый функционал только xml разные. Проблема в том что мы не знаем будет ли у типа image или нет так как это узнается только в onBindViewHolder. Если мы меняем View.GONE -> View.VISIBLE или наоборот, то recyclerview месит все (например вновь использует view где был View.GONE на view где должен быть View.VISIBLE). Если мы оцениваем каждый элемент и ставим View.GONE или View.VISIBLE каждый раз в onBindViewHolder то получается месиво (моргает всякий раз при быстром скроллинге) -> некрасиво смотрится. Третий вариант -> использовать разные типы ViewHolder (horizontal_view, full_view, vertical_view + тоже самое только ..._no_image) и xml удвоит количество кода. PS: В ios есть такая функция prepareForReuse которая до появления item в RecyclerView (tableview) может менять layout. Есть ли что то в андроид?
Mike
Привет. Если несколько типов View в адаптере (horizontal_view, full_view, vertical_view). у всех одинаковый функционал только xml разные. Проблема в том что мы не знаем будет ли у типа image или нет так как это узнается только в onBindViewHolder. Если мы меняем View.GONE -> View.VISIBLE или наоборот, то recyclerview месит все (например вновь использует view где был View.GONE на view где должен быть View.VISIBLE). Если мы оцениваем каждый элемент и ставим View.GONE или View.VISIBLE каждый раз в onBindViewHolder то получается месиво (моргает всякий раз при быстром скроллинге) -> некрасиво смотрится. Третий вариант -> использовать разные типы ViewHolder (horizontal_view, full_view, vertical_view + тоже самое только ..._no_image) и xml удвоит количество кода. PS: В ios есть такая функция prepareForReuse которая до появления item в RecyclerView (tableview) может менять layout. Есть ли что то в андроид?
ты делаешь if (что-то) setVisibility(GONE), а надо if (что-то) setVisibility(GONE); else setVisibility(VISIBLE); вот и весь reuse :)
Kotor
ты делаешь if (что-то) setVisibility(GONE), а надо if (что-то) setVisibility(GONE); else setVisibility(VISIBLE); вот и весь reuse :)
Дада. Но в этом случае при быстром скроллинге View начинает шатать (то есть пользователь видит вот View круто и там image нет а потом image резко появляется) -> не очень UX
Kotor
ну тут уж проблема где-то в твоём коде
Да не, обычный recyclerview где в onBindViewHolder стоит код который ты написал. Все равно спасибо большое :)
Pavel
Всех с праздником!! Чистого кода и быстрых компиляций!
Max
Начал изучать ContentProvider, как определяются URI, по которому можно получить доступ к данным и вообще где можно посмотреть какую информацию приложение может передавать?
Роман
Добрый день подскажите как через Gson десериализовать Date в формате SimpleDateFormat? дата вида "2019-02-05T14:00:34.786+03:00"
Dmitrii
Всем привет! Парни, объясните, что я делаю не так? val selectedDate = “${monthOfYear+1} $dayOfMonth, $year” //9 13, 2019 Date.text = LocalDate.parse(selectedDate, DateTimeFormatter.ofPattern(“MMM dd, yyyy”)).toString() Появляется ошибка ‘9 13, 2019’ could not be parsed at index 0
Ivan
и сделай «09 13, 2019»