169 похожих чатов

Implementation 'com.squareup.retrofit2:converter-moshi:latest.version' @JsonClass(generateAdapter = true) data class BlackjackHand(

val hidden_card: Card,
val visible_cards: List<Card>
)


addConverterFactory(MoshiConverterFactory.create())

Почему я получаю эту ошибку?
Мне надо moshi от другой репы подключать?

Caused by: java.lang.IllegalArgumentException: No JsonAdapter for kotlinx.coroutines.flow.Flow<....> (with no annotations)

35 ответов

6 просмотров

Так моши же у тебя просто json сможет спарсить, как он тебе флоу сделает?

Dmitriy- Автор вопроса

А как мне получить спарсенный json и добавить в flow?

А зачем тебе в принципе флоу получать? У тебя там вебсокеты или што🤔

Dmitriy- Автор вопроса

Нет, просто обернуть удобно в Flow

Ну так пусть тебе интерфейс ретрофита возвращает просто объект, а вызов самого метода можешь во что угодно обернуть

Dmitriy- Автор вопроса

Вот как выглядит код через Flow, просто у и удобно же override suspend fun getUsers(): Flow<List<PostEntity>> { return api.getPostApi() .getPosts() .flowOn(Dispatchers.IO) .map { it.map { PostEntity(id = it.id, title = it.title, body = it.body) } } }

Dmitriy- Автор вопроса

Мне короче надо внутри адаптера прописать что - то?

один мой друг сказал, люди которые пользуются корутинами, просто не умеют пользоваться rx

Не вижу ни одной причины тут использовать флоу. И кстати запросы ретрофита не нужно руками переводить на IO, они делают это под капотом

и? корутины элементарно языком поддерживаются и переиспользуют потоки

Dmitriy- Автор вопроса

Такую чушь несешь

Dmitriy- Автор вопроса

Предлагаешь использовать Call стандартный?

как и rx, переиспользование потоков зависит от шедулера, и открою тебе тайну, что у rx, что у корутин под капотом что? правильно! эксзекьюторы из канкаренси

наф пошел

Зачем call, в интерфейсе ретрофита функцию как саспенд объявляешь и радуешься жизни

Dmitriy- Автор вопроса

Ну собстна и понятно все стало, что ты за человек

причём тут это, корутины правильно это делать умеют, т.к. там switch генерируется, хотя, в андроиде это не особо важно на самом деле

это утверждение было верно до появления flow, flow сделал похожим корутины на rx

Dmitriy- Автор вопроса

Не понимаешь ты) обработку мне тогда через when и sealed делать предлагаешь?

Бред. С той же позиции можно сказать "даггер серебряная пуля, коин для неосиляторов". Плюсеры о плюсах так же говорят, наверное.

Dmitriy- Автор вопроса

Через Flow можно юзать collect/catch

про себя что думаешь?

Dmitriy- Автор вопроса

Я щяс о Flow думаю

Что какие when, какие sealed, при чем тут коллект флоу🤔🤔🤔🤔🤔🤔🤔🤔 У тебя максимально последовательная логика: получить список с сервера и смапить его

ну вот сначала подумай о том какой ты человек, а потом уже быкуй

Теперь ты несёшь бред. Причём тут "до появления flow"? Flow решает задачи реактивного обновления, корутин-билдеры призывают не писать всё в реактивном стиле. Если тебе нравится обмазывать всё реактивщиной - это не значит, что остальные неосиляторы.

Настоящие люди руками фабрики пишут

Dmitriy- Автор вопроса

Ужасный код получается

Фрагмент фабрики? Да, согласен.))

когда появились корутины, и когда стали пропагандировать переход на корутины, первый довыд был "избавимся от уродского api rx"

Так у rx реально уродское апи

а вот неудобно юзать корутины без флов

Какой ужасный код... У тебя функция getUsers просто получает список из апи и потом мапит его в список PostEntity. Это в прямом смысле 2 строчки

Dmitriy- Автор вопроса

А если ошибка?

Dmitriy- Автор вопроса

А проблема ошибки выше было банально простой, я suspend юзал вместе с flow

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
52
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
буквально один оставшийся вопрос при выполнении строчки mov eax, 5 операнд "5" будет присутствовать где-либо в памяти (любой), кроме как в памяти блока .code? подвопрос: как...
12
Всем ку. Подскажите, если задекларировал массив так: int arr[10] = {1, 2, 3, 4}, то в arr[4] будет мусор или нуль?
Sasha K
14
я не понимаю mov [r11+8],rcx и прочие. мы записываем значение из rcx, куда?
Bor
15
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
у меня такой вопрос про память в x86 возник, может кто пояснить?.. у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше)...
Toideng
5
А какие расширения активно используются в промышленности? Именно идейные, по типу гадт, а не всякие оверлоадедстрингс
Степан
11
у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше): - "п1" --- виртуальный адрес, то есть тот, который ресолвится в "п...
Toideng
3
Карта сайта