这个问题是非常基本的,但我仍在努力,因为这不是我的主要工作领域。我正在尝试调试蓝牙连接,并希望提取连接的当前RSSI值并将其记录在日志中。
我已经搜索了这个问题,但是发现大多数解决方案都超出了我的范围,或者看起来过于复杂,因为我只想要最新的价值。
我正在使用Bluetooth插件,该插件具有用于称为IDevice
的设备的接口。该接口具有一个ReadRssi
方法,该方法应该能够以某种方式产生int,而我需要该接口中的最新int。
IObservable<int> ReadRssi();
在谷歌搜索之后,我得到的最接近的是:
module.Device.ReadRssi().Subscribe(v =>
{
currentRSSI = v;
Logger.LogInfo(LogOperationType.Convert, $"Current RSSI {currentRSSI}");
});
其中Device
是模块类的一部分。
上面的代码可以编译,并且应用程序可以正常运行,但是没有任何值输出到日志中。这可能是一个范围问题,或者我可能在滥用某些东西,但是如上所述,我的目标是以不干扰的方式仅从可观察对象中获取最后一个值。在这种情况下,丑陋的骇客就足够了,所有帮助将不胜感激。