initMQTT method

Future<void> initMQTT([
  1. String? username,
  2. String? password
])

重连次数 初始化

Implementation

// int _reconnectCount = 0;

/// 初始化
Future<void> initMQTT([String? username, String? password]) async {
  try {
    // LogService.instance.reportMQTT('MQTT 服务初始化');
    mqttClient = MqttServerClient.withPort(
      '10.16.7.189',
      DateTime.now().toString(),
      9015,
      maxConnectionAttempts: 1,
    );
    mqttClient
      // 设置日志记录
      ?..logging(on: false)
      // 保持活动状态
      ..keepAlivePeriod = 20
      // 连接信息
      ..connectionMessage = MqttConnectMessage().startClean().withWillQos(qos)
      // 连接成功回调
      ..onConnected = _onConnected
      // 主动断开回调
      ..onDisconnected = _onDisconnected
      // 订阅回调
      ..onSubscribed = _onSubscribed
      // 取消订阅回调
      ..onUnsubscribed = _onUnsubscribed
      // 订阅失败
      ..onSubscribeFail = _onSubscribeFail;
    await connect(username, password);
  } catch (e) {
    // LogService.instance.reportMQTTError('MQTT 初始化异常', e, s);
  }
}