Posted on

Room 3.0 – Modernizing the Room

https://android-developers.googleblog.com/2026/03/room-30-modernizing-room.html

  • Room 3.0 – новая версия библиотеки для Kotlin (KMP), поддерживает JavaScript и WebAssembly (WASM).
  • Важные изменения в API: удаление API-интерфейсов SupportSQLite, использование API-интерфейсов androidx.sqlite, больше нет генерации Java-кода, фокус на KSP, использование сопрограмм Kotlin, новая упаковка для совместимости с существующими реализациями Room 2.x.
  • Для Room 3.0 требуются Kotlin и компилятор Kotlin, а также сопрограммы для функций DAO.
  • Переход на API-интерфейсы SQLiteDriver необходим для использования всех преимуществ Room 3.0.
  • Поддержка оболочки SQLite для облегчения перехода на Room 3.0.
  • Веб-поддержка Room и SQLite: мультиплатформенность Kotlin ориентирована на JS и WasmJS, API-интерфейсы SQLiteDriver обновлены для поддержки Интернета, новый веб-асинхронный драйвер доступен в androidx.sqlite:веб-сайт sqlite.
  • Пользовательские типы возвращаемых данных DAO: возможность добавлять пользовательские интеграции в Room с помощью нового API аннотаций.
  • Текущая версия Room 2.x переходит в режим технического обслуживания, основные функции не разрабатываются, но патчи по-прежнему выпускаются с исправлениями ошибок и обновлениями зависимостей