Size: a a a

Android Developers

2021 January 28

АК

Андрей Карчевский... in Android Developers
Aleksei
а вообще делай тогда  Grid ресайклер, если кнопок много и их количество может меняться
Спасибо!
источник

NT

Nikita Tipun in Android Developers
Qwant
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)
Так моши же у тебя просто json сможет спарсить, как он тебе флоу сделает?
источник

A

Aleksei in Android Developers
но ресайклер тема сложная и геморная. в ней разобраться все равно нужно будет рано или поздно, но если тебе прям щас нужно быстро решить задачу то лучше делай просто кнопки
источник

Q

Qwant in Android Developers
Nikita Tipun
Так моши же у тебя просто json сможет спарсить, как он тебе флоу сделает?
А как мне получить спарсенный json и добавить в flow?
источник

NT

Nikita Tipun in Android Developers
Qwant
А как мне получить спарсенный json и добавить в flow?
А зачем тебе в принципе флоу получать? У тебя там вебсокеты или што🤔
источник

АК

Андрей Карчевский... in Android Developers
Aleksei
но ресайклер тема сложная и геморная. в ней разобраться все равно нужно будет рано или поздно, но если тебе прям щас нужно быстро решить задачу то лучше делай просто кнопки
Да, я понял, что непростая тема, судя по описаниям на stackoverflow. Но лучше сразу нормальный подход использовать же)
источник

Q

Qwant in Android Developers
Nikita Tipun
А зачем тебе в принципе флоу получать? У тебя там вебсокеты или што🤔
Нет, просто обернуть удобно в Flow
источник

A

Aleksei in Android Developers
Андрей Карчевский
Да, я понял, что непростая тема, судя по описаниям на stackoverflow. Но лучше сразу нормальный подход использовать же)
да, от ресайклера в андроиде никуда не денешься. если время позволяет, разбирайся с ресайклером
источник

АК

Андрей Карчевский... in Android Developers
Aleksei
да, от ресайклера в андроиде никуда не денешься. если время позволяет, разбирайся с ресайклером
Хорошо, большое спасибо!
источник

NT

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

Q

Qwant in Android Developers
Nikita Tipun
Ну так пусть тебе интерфейс ретрофита возвращает просто объект, а вызов самого метода можешь во что угодно обернуть
Вот как выглядит код через 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)
               }
           }
   }
источник

Q

Qwant in Android Developers
Nikita Tipun
Ну так пусть тебе интерфейс ретрофита возвращает просто объект, а вызов самого метода можешь во что угодно обернуть
Мне короче надо внутри адаптера прописать что - то?
источник

NT

Nikita Tipun in Android Developers
Нет, тебе нужно логику переделать. Флоу от обычного запроса вообще не сильно имеет смысл, ты открыл подключение, получил данные, закрыл подключение. Тут нет никого потока данных
источник

ЕГ

Евгений Гончаров... in Android Developers
Qwant
Вот как выглядит код через 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)
               }
           }
   }
один мой друг сказал, люди которые пользуются корутинами, просто не умеют пользоваться rx
источник

ЕГ

Евгений Гончаров... in Android Developers
rx кажется им сложным, непостижимым
источник

NT

Nikita Tipun in Android Developers
Qwant
Вот как выглядит код через 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)
               }
           }
   }
Не вижу ни одной причины тут использовать флоу. И кстати запросы ретрофита не нужно руками переводить на IO, они делают это под капотом
источник

I

Ilya in Android Developers
Евгений Гончаров
один мой друг сказал, люди которые пользуются корутинами, просто не умеют пользоваться rx
и? корутины элементарно языком поддерживаются и переиспользуют потоки
источник

Q

Qwant in Android Developers
Евгений Гончаров
один мой друг сказал, люди которые пользуются корутинами, просто не умеют пользоваться rx
Такую чушь несешь
источник

Q

Qwant in Android Developers
Nikita Tipun
Не вижу ни одной причины тут использовать флоу. И кстати запросы ретрофита не нужно руками переводить на IO, они делают это под капотом
Предлагаешь использовать Call стандартный?
источник

ЕГ

Евгений Гончаров... in Android Developers
Ilya
и? корутины элементарно языком поддерживаются и переиспользуют потоки
как и rx, переиспользование потоков зависит от шедулера, и открою тебе тайну, что у rx, что у корутин под капотом что? правильно! эксзекьюторы из канкаренси
источник