如何在后台服务flutter中调用mqtt客户端
How to call mqtt client in background service flutter
我的项目使用 mqtt 进行通知。并且需要实时通知。
我有这样的 mqtt class
class Mqtt {
...
Mqtt._() {
mqttClient = MqttServerClient.withPort(server, clientIdentifier, port);
///Successful connection callback
mqttClient.onConnected = _onConnected;
///Disconnected callback
mqttClient.onDisconnected = _onDisconnected;
///Subscription success callback
mqttClient.onSubscribed = _onSubscribed;
///Subscription failure callback
mqttClient.onSubscribeFail = _onSubscribeFail;
}
static Mqtt getInstance() {
if (_instance == null) {
_instance = Mqtt._();
}
return _instance!;
}
///connection
connect() {
mqttClient.connect();
_log("connecting");
}
...
}
然后我这样称呼
Mqtt mqtt = Mqtt.getInstance();
mqtt.subTopic = 'NOTIFICATION/';
mqtt.connect();
但是当应用程序停止时,mqtt 会断开连接。
如何在后台服务flutter中调用mqtt客户端?
检查flutter foreground service它可能对你有帮助。
我的项目使用 mqtt 进行通知。并且需要实时通知。 我有这样的 mqtt class
class Mqtt {
...
Mqtt._() {
mqttClient = MqttServerClient.withPort(server, clientIdentifier, port);
///Successful connection callback
mqttClient.onConnected = _onConnected;
///Disconnected callback
mqttClient.onDisconnected = _onDisconnected;
///Subscription success callback
mqttClient.onSubscribed = _onSubscribed;
///Subscription failure callback
mqttClient.onSubscribeFail = _onSubscribeFail;
}
static Mqtt getInstance() {
if (_instance == null) {
_instance = Mqtt._();
}
return _instance!;
}
///connection
connect() {
mqttClient.connect();
_log("connecting");
}
...
}
然后我这样称呼
Mqtt mqtt = Mqtt.getInstance();
mqtt.subTopic = 'NOTIFICATION/';
mqtt.connect();
但是当应用程序停止时,mqtt 会断开连接。 如何在后台服务flutter中调用mqtt客户端?
检查flutter foreground service它可能对你有帮助。