Norim
Caused by: java.lang.IllegalArgumentException: Key exception has invalid type class java.net.ConnectException
Norim
Получается эксепшн нельзя засунуть в дату? Как его тогда передать в приложение на обработку?
Stunner // 🎄
что за магия? я в прогуарде добавил -keepattributes SourceFile,LineNumberTable и у меня починилась светлая тема
Norim
Может мне его тогда в байта а с байтов в эксепшн 🤔
Norim
Или сериализировать её что-ли 🤔
Shveps
Получается эксепшн нельзя засунуть в дату? Как его тогда передать в приложение на обработку?
Нет, нельзя. Если надо, сделай враппер, который будет хранить ошибку и результат
Norim
Нет, нельзя. Если надо, сделай враппер, который будет хранить ошибку и результат
Что такое враппер? Я вот думаю над сериализацией, но мне кажется что он просто сериализует в эксепшн, а не во что-то конкретное
Shveps
Worker возвращает success + данные либо error
Norim
Доку глянь
Не вижу в доке котлина слова враппер
Shveps
Не вижу в доке котлина слова враппер
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/
Norim
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-result/
И тут слова враппер нет, так что такое враппер? Если скажешь буду хоть понимать общий смысл концепции
Norim
Google ?
нету враппера, не упрямься, я же не просто так спрашиваю
Oleksiy 🇺🇦
Shveps
Слово Котлин убери) и погугли паттерны заодно, GoF
Евгений
всем привет! есть вопрос о LiveData во ViewModel когда мы подписываемся на нее, скажем, постя результат запроса в лд, мы получаем результат запроса. Но при повторной подписке (скажем, когда мы вернулись во фрагмент, закрыв верхний в стеке), мы моментально получаем данные, которые вернул запрос в первый раз. Как контролируются эти моменты в лайв дате обычно? Есть вариант каждый раз при вызове запроса брать новую лд, но чет мне кажется это чревато нехорошими последствиями
Norim
на слово враппер не очень похоже
Oleksiy 🇺🇦
на слово враппер не очень похоже
официально может называется по другому
Norim
официально может называется по другому
так зачем говорить тогда враппер и кидать мне скрин другого слова?)
Norim
Нет, нельзя. Если надо, сделай враппер, который будет хранить ошибку и результат
Кстати, а где он будет храниться тогда? Или как возвращаться?
Ruslan
так зачем говорить тогда враппер и кидать мне скрин другого слова?)
Может стоит поучить английский? Как программировать собираетесь, если в гугле не можете найти? Например вот это https://refactoring.guru/ru/design-patterns/decorator
Ruslan
При чем тут английский и паттерны? Программистам лишь бы поспорить о чем-то ей богу
Достаточно набрать было в гугле wrapper и гугл сам подставляет pattern
Ruslan
При этом английский
Ruslan
Как минимум
Norim
Может стоит поучить английский? Как программировать собираетесь, если в гугле не можете найти? Например вот это https://refactoring.guru/ru/design-patterns/decorator
Окей, будем считать что это враппер, но нужно тогда сразу говорить паттерн обертка и вопросов не будет, а то сказали загадочное враппер и еще возмущаются ля
Norim
а вам это сказали, читать внимательно надо
Кого читать внимательно, я же скрин кинул где нет ничего про враппер какой-то ля, все, спорить с программистами это ужасно, 100 тем найдут лишь бы спор продолжить
Ruslan
wrapper pattern
Norim
https://t.me/android_ru/751759
я не буду продолжать спорить, не буду, и на провокации не поведусь, хватит
Ruslan
С таким подходом, вопросы не закончатся никогда....
Norim
Лучше скажи мне где этот класс-обертку хранить
Norim
С таким подходом, вопросы не закончатся никогда....
Да, давай теперь поспорим на счет подходов
Alexander
CustomTabsIntent
Спасибо. То, что надо)
Alexander
ChromeCustomTab или webview
ChromeCustomTabs вроде тоже похожее что-то
Alexander
Только не пойму, в чем отличие? Он по функцоналу более богатый?
Shveps
Да, давай теперь поспорим на счет подходов
Тут никто не намерен спорить. Здесь никто не будет писать код, но могут посоветовать в какую сторону копать. А гуглить - никто не мешает. Поправьте, если я не прав
Norim
Лучше скажите где обертку хранить и получать
Ruslan
Ruslan
За вас писать никто не будет, подсказали, дальше гугл в помощь
Anatoly
Лучше скажи мне где этот класс-обертку хранить
Возвращать вместо "нулевого класса" обертку, а в ней хранить сам класс и результат ошибки. з.ы. особо не вникал, могу быть не прав :)
Shveps
Только не пойму, в чем отличие? Он по функцоналу более богатый?
Он подтягивает встроенный клиент с авторизацией. Из минусов - приходится писать "план б", если не поддерживается функционал
Norim
Уже ответили https://t.me/android_ru/751786
Слово обертка или враппер там не фиругигурировало. А ты хитер, решил что можно поспорить теперь на счет обертки
Dmytro
Ребят, помогите, есть класса (пожо) у него поле может быть то Объектом, то Массивом. Вот эту модельку я получаю в ответе. прочитал что нужно свой адаптер написать для Gsona, я написал в ретрофите зарегал, но все равно не подхватывает, может аннотацию какую упустил ?
Sam
Тут никто не намерен спорить. Здесь никто не будет писать код, но могут посоветовать в какую сторону копать. А гуглить - никто не мешает. Поправьте, если я не прав
добавлю что бы помогли написать код — надо идти на stackoverflow и задать вопрос там обычно находится кто-нибудь, кто напишет работающий код по твоему вопросу
Norim
Слево это ты который пытается поспорить, а справа я который все понял и не попадается на провокации
Norim
спроси на стековерфлоу, тебе напишут рабочий пример
зачем там спрашивать как вернуть обертку из воркера? Лол какой-то
Norim
Что я наделал, теперь же новая тема для спора есть...
Norim
Так, давайте все-таки вернемся к тому знает ли кто, каким способом эта обертка доберется до фрагмента, чтобы я мог показать ошибку на интерфейсе?
Dmytro
А как ты парсишь json?
ты про адаптер? или вообще? если 2е то это не я, а Gson
Norim
спроси на стековерфлоу, тебе напишут рабочий пример
ладно, на одну провокацию поведусь, я разве просил рабочий пример или что? Или про код говорил? Я говорю только про способ абстрактный и все
Dmytro
gson ты что даешь?
Я вручную ничего не делаю. Я пользуюсь ретрофитом, ему засетил ГсонФактори. указываю каким классом должен быть ответ, а гсон сам из жсона раскладывает по полям
Dmytro
вот только в зависимости от кода ответа одна поле "data" может быть то объектом, то массивом
Dmytro
Сейчас поищу пример
мне не нужен пример, я сам нашел как это делать, через адаптер, только он почему-то не срабатывает
Dmytro
Java или kotlin? На Котлине data class обычно расписываю и gson все парсит
у data classa сверх сила на поле с возможным разным типом?
Ruslan
у data classa сверх сила на поле с возможным разным типом?
Можно и так сказать) там можно указать тип Any
Dmytro
Можно и так сказать) там можно указать тип Any
ясно, это не то. дата класс тут не причем. Жава класс тоже так может, только с типом Object
Usam
пацаны я чё-то не догоняю
Usam
скачал новую студию, установил, просит СДК, скачиваю, просит ЖДК, скачиваю устанавливаю, открываю СДК, не видит что ЖДК установлен... что за ересь?! Может есть у кого ссылка на норм сдк? на офф сайте фигню только нашел Комманд лайн тулс
Shveps
ясно, это не то. дата класс тут не причем. Жава класс тоже так может, только с типом Object
В респонзе указываешь поле как JsonObject body вот так указывал, а потом делаешь кастомный десериализатор( Deser... implements JsonDeserializer<Foo>) Этот десериализатор вешаешь над сущностью @JsonAdapter(DeserializerFoo.class)
Виктор
Друзья, помогите с версткой. Есть WebView, но на телефонах с виртуальной панелью навигации, она заезжает под панель и часть данных тогда невозможно увидеть. Как правильно это сверстать, чтобы не пришлось хардкодить отступы. Нашел WindowInsets, но не могу понять как с ними работать.
Usam
так вам нужны мидлы... уровень бог это супер крутые сеньоры