我正在尝试使用C#编写的发件人向ActiveMQ发送消息,然后尝试在运行ActiveMQ Client的Android设备上接收消息。

我无法做到这一点。任何帮助将不胜感激。

我正在使用paho eclipse客户端。

这是我的代码:

    //Connection with the server
    private void connect() {
        MqttConnectOptions connectOptions = new MqttConnectOptions();
        connectOptions.setAutomaticReconnect(true);

        client = new MqttAndroidClient(this, serverURI, clientId);
        try {
            client.connect(connectOptions, new IMqttActionListener() {
                @Override
                public void onSuccess(IMqttToken asyncActionToken) {
                    publishBtn.setEnabled(true);
                    subscribe();
                }

                @Override
                public void onFailure(IMqttToken asyncActionToken, Throwable e) {
                    e.printStackTrace();
                }
            });
        } catch (MqttException e) {
            e.printStackTrace();
        }
    }

最佳答案

是的,只要您配置了代理以添加MQTT传输端点,就可以执行此操作。您还需要确保您的设备可以到达可能位于防火墙或其他安全措施之后的代理,因此此处的配置很关键。 here中记录了MQTT的ActiveMQ 5.x代理配置。

07-27 13:17