Николай
Можешь взять json который тебе по-факту приходит, и так же сгенерить класы, и там где value будет List<String>
Я только что попробовал. Впиндюрил туда Json, который получил и всёравно оно генерит класс со Стрингой вместо масива. С масивом генерит только когда я удаляю с джейсона все обьекты со строками, а оставляю только с масивом
Николай
В ретрофите gson юзаешь? Там можно написать кастомный десериализатор для класса, в нем можно проверить что в конкретном поле пришло, строка или массив
Ну а касательно класса. Как создать такой, что бы было две переменные с одинаковым именем? Или есть другой подход?
Timyr
А зачем две переменные с одним именем?
Valentin
Ребят подскажите как переиспользовать bitmap или может хранить изображение в виде файла?
Николай
А зачем две переменные с одним именем?
Ну от прийдёт мне два таких обьекта. У одного строка, а у второго масив. Как мне их десериализировать? В любом случае делать масив, только если одна строка то это будет массив с одной строкой?
Timyr
их можно просто назвать по разному
Timyr
или просто в массив все пихать, дело твое
Valentin
Что?
из стрингов собирается свг файл и переводится в битмап, далее я его сохраняю в синглтон чтоб потом можно было в любой момент вытащить, потому что на этом изображении я потом буду рисовать
Valentin
битмап занимает много памяти, какие есть варианты использования одного и того же битпам во всем приложении
Алексей
java.lang.IllegalArgumentException: parameter must be a descendant of this view
Алексей
с стак трейсе нет ни одного моего метода, ообще хз где как и почему такое падает
Anonymous
напомните, плз, как эта штука называлась?
Anonymous
статус бар)
точно, спасибо
Dmytro
java.lang.IllegalArgumentException: parameter must be a descendant of this view
Ты же перевел, что написано, скорее всего какой-то не тот параметр куда-то отправил
Кек
ребят тут есть aso специалисты
Кек
или форумы где могу найти асо специалиста на удаленку
Mike
ребят тут есть aso специалисты
Это что-то про андроид-разработку, нет?
Кек
Это что-то про андроид-разработку, нет?
ну продвижение ПО в play market или app store
Кек
нужны спецы на удаленку
Dmitry
Ребята, подскажите, что я делаю не так при работе с общей ViewModel. Немного предыстории: Есть в приложении 2 экрана: Список деталей и экран конкретной детали. Т.к. обеим экранам требуется List<Details>, сделал для них общую ViewModel и в ней храню этот лист. Обратил внимание на странные NPE в Crashlytics при открытии экрана детали (стек говорит о том, что selectedDetail = null) Я грешил на вот этот кусок кода в ViewModel: repository.getAvailableItems().doOnNext(items -> { itemsList.clear(); itemsList.addAll(items); }); Но dispose этого observable делается на onDestroy фрагмента со списком. Переход из листа в деталь содержит вызов у детали, если бы она была бы null на этом моменте - приложение упало бы тут: getFragmentManager().beginTransaction() .replace(R.id.fragment_container, new DetailFragment()) .addToBackStack(item.getDisplayName()) .commit(); Инициализацию ViewModel и запуск действий, связанных с деталью, делаю в onActivityCreated фрагмента детали. Можете подсказать куда копать? P.S. Ориентация фиксированная, приложение типа kiosk, так что я не думаю, что это связано с какими то изменениями конфигурации
Николай
https://medium.com/@int02h/custom-deserialization-with-gson-1bab538c0bfa
А как мне свой конвертер в ретрофит засунуть? Ретрофит использует .addConverterFactory(GsonConverterFactory.create())
Vladislav
Ребят, можете кое что объяснить по паттерну MVP? Я правильно понимаю что в Model я описываю всю логику по работе с данными, например загрузить с интернета или вытащить с БД? В presenter я описываю слушатели кнопок или каких то событий, как только что то произошло презентер берет данные с model и передает их view (например RecyclerView для заполнения списка или например ImageView для картинки) я правильно понял?)
Ivan
Ребята, подскажите, что я делаю не так при работе с общей ViewModel. Немного предыстории: Есть в приложении 2 экрана: Список деталей и экран конкретной детали. Т.к. обеим экранам требуется List<Details>, сделал для них общую ViewModel и в ней храню этот лист. Обратил внимание на странные NPE в Crashlytics при открытии экрана детали (стек говорит о том, что selectedDetail = null) Я грешил на вот этот кусок кода в ViewModel: repository.getAvailableItems().doOnNext(items -> { itemsList.clear(); itemsList.addAll(items); }); Но dispose этого observable делается на onDestroy фрагмента со списком. Переход из листа в деталь содержит вызов у детали, если бы она была бы null на этом моменте - приложение упало бы тут: getFragmentManager().beginTransaction() .replace(R.id.fragment_container, new DetailFragment()) .addToBackStack(item.getDisplayName()) .commit(); Инициализацию ViewModel и запуск действий, связанных с деталью, делаю в onActivityCreated фрагмента детали. Можете подсказать куда копать? P.S. Ориентация фиксированная, приложение типа kiosk, так что я не думаю, что это связано с какими то изменениями конфигурации
savedInstanceState не может быть причём?
Dmitry
savedInstanceState не может быть причём?
onSaveInstanceState и onRestoreInstanceState пустые
Назарий
всем привет. в мессенжерах при отправке сообщений в оффлайне после подключения к инетернету каждое сообщение отправляется на сервер отдельным запросом или все вместе одним?
Назарий
Да как реализуют так и отправляются
а не будет ли страдать скорость работы, при сотне запросов и авторизации в каждом?
Кирилл
Как сделать такой текст вью? По сути, надо чтобы весь текст был не кликабельный, а "Подробнее" - кликабельный. Только кастом вью?
Кирилл
Спаны. Есть кликабельный спан
Ок, спасибо, буду копать туда
Ivansuper
Правда раньше у него был баг -- он ловил клик на всю строку, а не только на себя. Как сейчас -- не знаю
Дмитрий
Как думаете, как лучше реализовать переход с фрагмента на webView? Сделать новый фрагмент, в котором будет webView или отдельное активити?
Дмитрий
если внутри приложения используется многофрагментность
Denis
там даже со спанами не надо ебаться
Denis
TextView сам умеет
Vadim
Если переменная типа SparseArray<Barcode> то это выглядит аля int + Object?
Дмитрий
Понял, ну тогда не буду делать для webView лишнию активити. Спасибо
Danile
гайз, а вообще можно в стринге как html <![CDATA[ выровнять текст по центру и поменять его размер? я чет не нашел такого
Danile
кто то шарит?
Granderbird
гайз, а вообще можно в стринге как html <![CDATA[ выровнять текст по центру и поменять его размер? я чет не нашел такого
Я думаю если ты html пихаешь в стрингу, то тут лучше у веберов вспрашивать, а если вопрос про то, как показывать html в текствью, то она это может, гугли, там специальный метод если память не изменяет
Danile
нет, оба мимо. я видел разметки html но под тегом <![CDATA[ они не работают.
Danile
ладно наверное нельзя, раз в гугле нет
Ярослав🇺🇦
ладно наверное нельзя, раз в гугле нет
https://stackoverflow.com/questions/55779394/text-aligncenter-not-working-in-cdata-in-string-xml
Danile
но всем спасибо все равно)
Кирилл
Это же линк? Загугли TextView link
Нет.) Спаны идеально подошли.)
Dmitriy
Гайс, работали с локальными пушами a.k.a alarmManager ? Короче я их насоздавал с разными интенетами, а потом хочу отменить их в одно действие. Мне нужно воссоздать каждый интент?
Anonymous
Ребята, доброго времени суток. Я представитель компании OOO "Semmens Corp". Нашей компании нужен опытный middle/senior Android developer, с хорошим знанием Kotlin. Работать можно удаленно.
Zhako ❄️
Всем привет, ребят , мне нужно сделать поисковик картинок(допустим пинтерест ),чтобы оттуда брать картинки и тд, написала что мне нужно , а теперь как связать с layout?я новичок , можете ли вы обьяснить 😅 апи, ретрофит все вроде написала
Lubomir
Всем привет, есть проблема. Не работает подписание через RSA в андроид, падает с java.security.InvalidKeyException: Keystore operation failed Caused by: android.security.KeyStoreException: Incompatible purpose вот код подписания и параметров для кейстора https://hastebin.com/cijoqadike.cs Я думаю упустил что то при настройке кейстора, может кто сталкивался ?
Владислав
Всем привет, кто-нибуь знает возможно ли подключить MSQL к Android проекту, а если возможно то можете дать ссылку на туториал какой-нибудь?
Vadim
не могу догнать какое default value закинуть для баркода? val codes = SparseArray<Barcode>() codes.getOrPut(0, defaultValue = ) кто может подсказать?
Vadim
ну мол для String всё понятно map.getOrPut((0), defaultValue = { "Some string" })
Vadim
some barcode, ёмаё
ну это же не строка
Vadim
some barcode, ёмаё
или ты предлагаешь так? { Barcode() }
Mike
если бы был однозначный ответ, «какое закинуть», SparseArray бы сам и закинул. Вопрос на самом деле показывает, что ты понятия не имеешь, что происходит
Vadim
Dug
Епта))
Сергей
Всем привет, есть проблема. Не работает подписание через RSA в андроид, падает с java.security.InvalidKeyException: Keystore operation failed Caused by: android.security.KeyStoreException: Incompatible purpose вот код подписания и параметров для кейстора https://hastebin.com/cijoqadike.cs Я думаю упустил что то при настройке кейстора, может кто сталкивался ?
1. RSA несекюрен при неправильном применении. Есть другие варианты гибридного и одностороннего шиффования 2. Крипто слишком ответственная вещь что бы туда руками на низком уровне лезть программировать, непосредственно кейстор и т п Есть отличная библиотека Tink, она за вас все сделает - и создание ключей и хранение
alexander
Подскажите, где посмотреть пример, как управлять источником звука MediaPlayer, пробую через AudioManager менять с помощью mAudioManager.setSpeakerphoneOn() - не получается
Ivansuper
Спасиба гуглу за такой добрый и хороший код внутри AlertDialog'ов. Сами создали LayoutParams и сами положили болт не давая возможности задать размеры. Гениально
Ivansuper
Т.е. любая попытка задать setView на диалоге расквасивает его по всей высоте экрана
Lubomir
1. RSA несекюрен при неправильном применении. Есть другие варианты гибридного и одностороннего шиффования 2. Крипто слишком ответственная вещь что бы туда руками на низком уровне лезть программировать, непосредственно кейстор и т п Есть отличная библиотека Tink, она за вас все сделает - и создание ключей и хранение
Спасибо за наводку на Tink, интересная штука) Вообще я ищу способ как можно шифровать сообщение приватным ключом,а декриптить уже открытым ключом т.е. асиметричная подпись. Не подскажите, что можно использовать в этом случае ?
Ivansuper
так это параметры вьюхи во фрейме. А сам фрейм в диалоге как?
Ты про разметку где лежит сам R.id.custom? Я пока туда не ходил
Сергей
И специально подобран набор нормальных безопасных видов и длин ключей