android - Android房间LiveData接收观察的最后一个变化值以及如何丢弃之前观察到的db变化值
问题描述
我使用房间返回实时数据,例如:
@Transaction
@Query("SELECT * FROM msg")
LiveData<List<Msg>> loadMsgs();
在活动 A 中,我将 msg MA 插入 db,然后在活动 B 中,我观察 livedata,如:
liveData.observe(getViewLifecycleOwner(), myProducts -> {
if (myProducts != null) {
}
});
并将 msg MB 插入到 activityB 中的 db 中。第一次收到唯一的 msg MA,第二次收到 MA 和 MB,为什么?味精 MA 是在观察之前插入数据库,我想在观察后第一次接收所有味精。
解决方案
推荐阅读
- javascript - 如何在js var数组值中创建新行
- python - SQLAlchemy 是否支持 Pervasive PSQL?连接字符串呢?
- php - Max Rulew 上的 Laravel 照片验证
- database - 创建语句级触发器时出现编译错误
- ios - 如何为约束定义对象的预设高度和宽度(Swift4)
- angular - Angular 功能模块动态传递数据
- python - 尝试在没有时间戳的 Python 中创建包含日期和时间的列表
- python-3.x - Python中的组合
- batch-file - 在子文件夹中搜索 Doc 和 Docx 文件
- r - 为什么对两个相同的矩阵行进行幂运算会产生不同的值?