Моя команда разработала новое приложение для Android, в котором широко используется Room.
Я не уверен, правильно ли мы используем AsyncTask.
Нам пришлось обернуть все вызовы вставки / обновления / удаления в AsyncTasks, что привело к огромному количеству AsyncTasks. Все вызовы в комнату поступают из фоновых служб. Нет прямого доступа к Room из активностей или фрагментов - они получают все через LiveData.
Пример вызова для вставки строки:
AsyncTask.execute(() -> myModelDAO.insertInstance(myModel));
При этом в DAO:
@Insert
void insertInstance(MyModel model);