如何从房间外部数据库中不断读取更新的值?

时间:2018-06-08 02:36:51

标签: android database android-room android-livedata

我使用Live Data访问外部数据库。 存储在外部数据库中的值每5秒由另一个应用程序更新。 似乎我不能经常从房间收到更新的价值。 我应该重建数据库以每5秒获取一次更新值吗?

以下是一些参考代码:

viewRecord(id) {
  this.router.navigate(['course/view/', id]);
}

}

@Dao public interface GasDynamicDao {

@Query("Select * from gas_dyamic")
LiveData<List<GasDynamicEntity>> getAllInformation();

@Query("Select * from gas_dyamic")
List<GasDynamicEntity> getAllInformationSync();

@Insert(onConflict = OnConflictStrategy.REPLACE)
void insertAll(List<GasDynamicEntity> products);

@Query("Select * from gas_dyamic where Device_ID = :deviceID")
LiveData<GasDynamicEntity> loadGas(String deviceID);
@Query("Select * from gas_dyamic where Device_ID = :deviceID")
GasDynamicEntity loadGasSync(String deviceID);

1 个答案:

答案 0 :(得分:0)

我通过轮询数据库来解决问题。 但是数据库不需要从房间重新创建或重新加载。 通过Dao方法重新查询数据库,LiveData将再次更改。