我正在观察网络的变化,并且当有连接时,我想从Room数据库中获取数据。
我有getOfflineData返回数据流。
@Query("SELECT * FROM OfflineData")
fun getOfflineData(): Flow<List<OfflineData>>
当有网络连接时,我想从getOfflineData中获取数据。
这是检查是否存在连接正常的功能
fun listenToConnectionChanges() {
launch {
OfflineDatabaseManager.getInstance(app.applicationContext).networkConnectionActivated
.collect { isNetworkConnectionActive ->
Timber.d("OfflineDataLib - getOfflineData() - isNetworkConnectionActive - " + isNetworkConnectionActive)
}
}
}
当我包括以下代码以从功能getOfflineData()获取数据时,当我切换连接时,它不会记录连接更改消息。也不会获取数据。
我在这里可能做的是根本错误的事情,请纠正我
fun listenToConnectionChanges() {
launch {
OfflineDatabaseManager.getInstance(app.applicationContext).networkConnectionActivated
.collect { isNetworkConnectionActive ->
Timber.d("OfflineDataLib - getOfflineData() - isNetworkConnectionActive - " + isNetworkConnectionActive)
if (isNetworkConnectionActive) {
OfflineDatabaseManager.getInstance(app.applicationContext).getOfflineData().collect {
Timber.d("OfflineDataLib - getOfflineData() - isNetworkConnectionActive - offlinedata - " + it.toString())
}
}
}
}
}
我想要实现的是当有连接时,我想从getOfflineData
获取数据。
预先感谢 R