我是 Flutter 的新手(来自 Android 背景),想在 Flutter 中实现 MQTT 客户端。
这就是我要的:
当应用程序打开/未被操作系统杀死时,MQTT 客户端应该是“活动的”。
我不想在后台运行它(在没有打开应用程序的情况下,我知道在 iOS 中这样做有问题,请在某处阅读它)但是在应用程序打开时。
根据订阅主题中的消息更新 UI/状态。
我查看了 pub 并找到了 2 个包mqtt和mqtt_client,它们看起来像是 dart 中 MQTT 的非 Flutter 实现。
我有一个想法如何使用这个库之一使它与颤振一起工作,但不确定它是否会工作:
创建并实现 MQTTObserver 状态小部件,它将异步连接到代理并侦听特定主题的消息并相应地更新状态。
将这个小部件包裹在 MaterialApp 周围
树下的任何小部件都可以访问 MQTTObserver 小部件的状态,以在其 UI 中反映它。
你认为这是个好主意吗?它会起作用吗?你有更好的主意吗?或者我应该为 MQTT 实现特定于平台的实现(应该是我的最后一个选择)。