Flutter MQTT 一直断开重连的
2024-03-11 本文已影响0人
Pino
使用的是这个库
![](https://img.haomeiwen.com/i14078494/68c0dfabac9f40e4.png)
一开始只有一个人开发,一直没有发现这个问题,后面测试的时候
多个人登录app开始测试,发现MQTT一直断开重连,找了很久没有找到问题
最终在这篇文章找到答案 https://stackoverflow.com/questions/73047572/flutter-mqtt-disconnect-immediately-after-connecting
修改之前
final MqttConnectMessage connMess = MqttConnectMessage()
.withClientIdentifier('test')
.startClean()
.authenticateAs(userName, password)
// .withWillTopic('willtopic')
// .withWillMessage('Will message')
.withWillQos(MqttQos.atLeastOnce);
_client.connectionMessage = connMess;
修改后,withClientIdentifier其实可以不设置,如果要设置,一定是唯一的,我这里使用随机时间戳来实现
final MqttConnectMessage connMess = MqttConnectMessage()
.withClientIdentifier('test ${DateTime.now().millisecondsSinceEpoch}')
.startClean()
.authenticateAs(userName, password)
// .withWillTopic('willtopic')
// .withWillMessage('Will message')
.withWillQos(MqttQos.atLeastOnce);
_client.connectionMessage = connMess;