Перейти к содержимому
Все записи

#room

16 записей с тегом room.

MFKAPPS 4 мин чтения

Room TypeConverters в 2026 году: как хранить enum'ы, даты и списки, не повреждая схему

Практическое руководство по Room TypeConverters на Android — enum'ы, Instant/LocalDate и списки — а также ошибки, которые превращают конвертер в незаметный баг повреждения данных.

#android #engineering #room
MFKAPPS 4 мин чтения

R8 и ProGuard для Kotlin, Room и Compose: сбой, который случается только в релизе

Почему приложение Android на Room + Compose идеально работает в debug и падает в продакшене, и какие именно правила keep R8/ProGuard ловят это раньше пользователя.

#android #engineering #kotlin
MFKAPPS 4 мин чтения

Индексы базы данных Room в 2026 году: находим по-настоящему медленный запрос и исправляем его

Практическое руководство по индексированию базы Room/SQLite на Android — чтение EXPLAIN QUERY PLAN, добавление @Index без угадывания и ошибки, которые незаметно сводят индекс на нет.

#android #engineering #room
MFKAPPS 4 мин чтения

@Relation в Room: запрос данных «один ко многим» на Android без N+1-запросов

Практическое руководство по аннотации @Relation в Room — моделирование данных «один ко многим», таких как категории и записи, без N+1-запросов и ручных join'ов.

#android #engineering #room
MFKAPPS 4 мин чтения

Paging 3 и Room: как сохранить плавность растущего списка транзакций в Android-приложении в 2026

Как постранично загружать список транзакций на Room с помощью Jetpack Paging 3, чтобы годы данных оставались плавными в Compose — без RemoteMediator, без сети, просто правильно устроенная локальная база данных.

#android #engineering #room
MFKAPPS 5 мин чтения

Полнотекстовый поиск в Room: добавляем мгновенный поиск в local-first Android-приложение в 2026

Практическое руководство по поддержке FTS4 в Room на Android — создание виртуальной таблицы поиска, синхронизация через триггеры и почему FTS5 требует ручной миграции.

#android #engineering #room
MFKAPPS 5 мин чтения

Шифрование базы данных Room в 2026: SQLCipher, Keystore и миграция без потери данных

Практическое руководство по шифрованию базы данных Room/SQLite в состоянии покоя на Android с помощью SQLCipher — управление ключами через Keystore, разовая миграция и реальная цена по производительности.

#android #engineering #privacy
MFKAPPS 4 мин чтения

Резервное копирование локальных данных в Android в 2026 году: экспорт через SAF, Auto Backup и восстановление, которому можно доверять

Как local-first приложения для Android резервируют данные пользователя без сервера: экспорт/импорт через SAF, Auto Backup for App Data и восстановление, которое проверяет данные перед перезаписью.

#android #engineering #privacy
MFKAPPS 5 мин чтения

Тестирование local-first Android-приложения в 2026 году: Room, Flow и Compose UI-тесты, которые ловят реальные баги

Практическая стратегия тестирования для local-first Android-приложений в 2026 году — DAO-тесты с Room в памяти, Turbine для Flow и те немногие Compose UI-тесты, которые действительно стоит писать.

#android #engineering #kotlin
MFKAPPS 4 мин чтения

Миграции баз данных Room в 2026 году: как менять схему, не теряя ни одной строки

Практическое руководство по миграциям баз данных Room на Android — AutoMigration, написанные вручную объекты Migration и как протестировать миграцию до того, как её найдут ваши пользователи.

#android #engineering #room
MFKAPPS 5 мин чтения

Jetpack Glance в 2026 году: как создать виджет для главного экрана, который никогда не врёт о ваших данных

Практическое руководство по виджетам Jetpack Glance на Android — состояние, обработка нажатий и ловушка квоты обновлений, из-за которой виджеты показывают устаревшие данные.

#android #engineering #kotlin
MFKAPPS 4 мин чтения

Разработка календаря приверженности OldSchool: превращаем отметки о приёме в надёжный день

Месячный календарь приверженности выглядит как одна цветная точка на день. Вот модель событий, правила дневного статуса и математика своевременности — всё на устройстве.

#android #engineering #room
MFKAPPS 4 мин чтения

Как устроен Subly: календарная математика за датами продления подписок

Предсказать дату следующего списания по подписке кажется тривиальным — пока не столкнёшься с биллингом в конце месяца, високосными годами и переходом из пробного периода. Вот как Subly решает это прямо на устройстве.

#android #engineering #subscriptions
MFKAPPS 4 мин чтения

Разработка Granyn: трекер бюджета без входа в банк, всего на трёх таблицах

Как Granyn отслеживает расходы в разных валютах и распознаёт повторяющиеся счета, не подключая ни одного банковского аккаунта — схема Room под капотом и компромиссы, которые она навязывает.

#android #engineering #privacy
MFKAPPS 3 мин чтения

Как я делал Stocky: предсказать, что заканчивается на вашей кухне — прямо на устройстве

Как Stocky превращает скан штрихкода и немного истории использования в список покупок, который появляется прежде, чем у вас что-то закончится — и вся математика, и все данные остаются на вашем телефоне.

#android #engineering #privacy
MFKAPPS 7 мин чтения

Local-first на Android в 2026 году: SQLite, Room и хранение пользовательских данных на устройстве

Руководство 2026 года по созданию local-first приложений для Android на Room и SQLite — проектирование схемы, миграции, WAL, экспорт и когда (и когда не стоит) добавлять синхронизацию.

#android #engineering #privacy