У меня есть бд. Создается она в java
public abstract class AppDatabase extends RoomDatabase
Так удобно. Но записи в бд добавляются из натива! А из андроида я только их подтягиваю. Как мне сделать систему подписки? Раньше я делал через liveCycle
private void setObserve() {
mViewModel.getList().observe(MyClass.this, new Observer<List<Message>>() {
@Override
public void onChanged(@Nullable List<Message> Messages) {
//code
}
});
}
Но теперь это не работает. Я пробовал через FileObserver, просто указав ему путь к бд в надежде, что при изменениях меня оповестят. Но нет, это тоже не работает.
FileObserver fileObserver = new FileObserver(mViewModel.getDbPath()) {
@Override
public void onEvent(int event, @Nullable String path) {
Log.e(TAG, "Change!: ");
}
};
fileObserver.startWatching();
Вопрос: Как мне подписаться на изменения в бд, если insert происходят не в самой джава, а мб вообще в другом приложении и на другом языке?
Сборка персонального компьютера от Artline: умный выбор для современных пользователей