react-native 创建mqtt客户端
安装
参考https://www.npmjs.com/package/react-native-native-mqtt
import * as Mqtt from 'react-native-native-mqtt';
const client = new Mqtt.Client('[SCHEME]://[URL]:[PORT]');
client.connect({
clientId: 'CLIENT_ID',
...
}, err => {});
client.on(Mqtt.Event.Message, (topic: string, message: Buffer) => {
console.log('Mqtt Message:', topic, message.toString());
});
client.on(Mqtt.Event.Connect, () => {
console.log('MQTT Connect');
client.subscribe(['#'], [0]);
});
client.on(Mqtt.Event.Error, (error: string) => {
console.log('MQTT Error:', error);
});
client.on(Mqtt.Event.Disconnect, (cause: string) => {
console.log('MQTT Disconnect:', cause);
});
问题
设置自动重连之后,重启2次客户端会出现,反复掉线重连的情况。
原因:clientId 两次启动重复导致第二次启动,无法正常链接。