【发布时间】:2021-09-07 14:45:44
【问题描述】:
请帮助我了解如何将 mosquitto 服务器连接到模拟器中的应用程序。 在 Windows 中使用蚊子代理。无法使用系统的 IP 地址将 mosquitto 服务器连接到模拟器。我可以在 cmd 中看到这两个端口作为监听端口。
TCP 127.0.0.1:1883 和 TCP [::1]:1883
我已经在app中添加了paho的所有依赖、库和服务。
String clientId = MqttClient.generateClientId();
mqttAndroidClient = new MqttAndroidClient(MainActivity.this, **"tcp://192.168.0.5:1883"**,clientId);
mqttAndroidClient.setCallback(new MqttCallback() {
@Override
public void connectionLost(Throwable cause) {
Log.d("MqttConnection", "Connection Lost!");
}
@Override
public void messageArrived(String topic, MqttMessage message) throws Exception {
Log.d("Message", topic + ": + " + new String(message.getPayload()));
}
@Override
public void deliveryComplete(IMqttDeliveryToken token) {
Log.d("Delivery Complete", "Delivery Complete!");
}
});
connectButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
MqttConnectOptions mqttConnectOptions = new MqttConnectOptions();
mqttConnectOptions.setAutomaticReconnect(true);
mqttConnectOptions.setCleanSession(false);
try {
mqttAndroidClient.connect(mqttConnectOptions,null, new IMqttActionListener() {
@Override
public void onSuccess(IMqttToken asyncActionToken) {
Log.d("Mqtt Connection","Connection Success!");
}
@Override
public void onFailure(IMqttToken asyncActionToken, Throwable exception) {
Log.d("Mqtt Connection Failure","Failed to connect to: " +serverUri + exception.toString());
}
});
} catch (MqttException e) {
e.printStackTrace();
}
}
});
【问题讨论】:
标签: android mqtt mosquitto paho