6

我是 Flutter 的新手(来自 Android 背景),想在 Flutter 中实现 MQTT 客户端。

这就是我要的:

  1. 当应用程序打开/未被操作系统杀死时,MQTT 客户端应该是“活动的”。

  2. 我不想在后台运行它(在没有打开应用程序的情况下,我知道在 iOS 中这样做有问题,请在某处阅读它)但是在应用程序打开时。

  3. 根据订阅主题中的消息更新 UI/状态。

我查看了 pub 并找到了 2 个包mqttmqtt_client,它们看起来像是 dart 中 MQTT 的非 Flutter 实现。

我有一个想法如何使用这个库之一使它与颤振一起工作,但不确定它是否会工作:

  1. 创建并实现 MQTTObserver 状态小部件,它将异步连接到代理并侦听特定主题的消息并相应地更新状态。

  2. 将这个小部件包裹在 MaterialApp 周围

  3. 树下的任何小部件都可以访问 MQTTObserver 小部件的状态,以在其 UI 中反映它。

你认为这是个好主意吗?它会起作用吗?你有更好的主意吗?或者我应该为 MQTT 实现特定于平台的实现(应该是我的最后一个选择)。

4

1 回答 1

2

mqtt_client 包已经在 Flutter 中使用,虽然正在开发中,我自己不使用 Flutter,但有几个 Flutter 用户提出了问题,请参阅 [这里] [1]

[1]:以https://github.com/shamblett/mqtt_client/issues/16为例,问题列表中还有其他问题,也许您可​​以向其中一个 Flutter 开发人员提问。

于 2018-08-14T08:27:33.553 回答