TGViewer
AppFiles - Mobile Development AppFiles - Mobile Development @applib · 2.17K subscribers
Post #4415 345
Kwery - управление серверными данными для Android-приложения

Kwery — это библиотека для управления серверным состоянием в Android-приложении. По смыслу она очень похожа на TanStack Query/React Query, только для Kotlin/Android. Она не заменяет Retrofit, Ktor или OkHttp, а работает поверх них. Автор формулирует идею так: "Room хранит данные, которыми владеет приложение. Kwery управляет данными, которыми владеет сервер".

Kwery предлагает взять на себя значительную часть типовой логики между UI и сетевым клиентом. При этом сам HTTP-запрос всё равно делает Retrofit/Ktor/OkHttp. Kwery однако решает, когда его вызывать, нужно ли вообще вызывать, можно ли отдать уже имеющиеся данные и как показывать состояние запроса.

Основные вещи, которые она делает:

• Кэширует ответы сервера. Если экран повторно запрашивает те же данные, Kwery может вернуть существующий результат вместо нового HTTP-запроса.
• Дедупликация запросов. Если несколько экранов/компонентов одновременно запросили один ресурс, не обязательно делать несколько одинаковых запросов.
• Управляет состояниями loading/success/error.
• Делает retry при ошибках.
• Может обновлять данные в фоне.
• Управляет устареванием кэша.
• Поддерживает offline-сценарии, в том числе управляет записью данных без сети и затем синхронизацией при ее появлении.
• Может переиспользовать один результат между несколькими подписчиками.
• Использует корутины Kotlin + Flow.
• Есть интеграция с Compose.

Kwery на GitHub: https://github.com/dbjpanda/kwery
Платформа: Android
⭐️: 16

👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность
More from @applib
  1. Oct 7, 2026Pitch Kit - настройка гитары и распознавание аккордов Современная и удобная в использовани…
  2. Oct 6, 2026Визуализация данных с помощью шестиугольной тепловой карты в Swift Charts При создании гра…
  3. Oct 6, 2026Правда о Coil в Jetpack Compose: измеряем реальный оверхед SubcomposeAsyncImage Взял пять…
  4. Oct 6, 2026Rich Push Notifications в iOS: Notification Service Extension, Notification Content Extens…
  5. Oct 6, 2026SweetPad - xcodebuild для людей и агентов Инструмент командной строки, который собирает, з…
  6. Oct 5, 2026Как бы я спроектировал iOS-приложение с нуля, если бы оно должно было прожить 10 лет Тест,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →